Skip to content

Trundle/idris-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

idris-go

A Go backend for Idris.

What is working

  • Calling Go from Idris (see examples/echo.idr for an echo server)
  • Tail calls are implemented with goto if self-recursive and with a trampoline otherwise, hence arbitrary deep tail calls should work.

See the examples directory for some examples.

What is not working

  • Calling Idris from Go
  • Not every of Idris primitive functions is implemented. The use of an unimplemented primitive function will result in a panic at runtime.

Building from source

Easiest with Stack. See their documentation for details how to install it.

Assuming you have stack installed, then you can simply do:

stack build

To run the tests, execute:

stack test

Translating Idris programs to Go

stack exec idris -- -p go --codegen go examples/hello.idr -o hello.go

License

MIT/Expat. See LICENSE for details.

About

A Go backend for Idris

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published