Skip to content

moreheadm/futhark

 
 

Repository files navigation

The Futhark Programming Language

Join the chat at https://gitter.im/futhark-lang/LobbyBuild Status Project Stats

Futhark is a purely functional data-parallel programming language. Its optimising compiler is able to compile it to typically very performant GPU code. The language and compiler is developed as part of the HIPERFIT project at DIKU. The project is still in its early phases, and the focus has mostly been on ensuring high runtime-performance, so the language still lacks certain niceties and features.

For more information, see the website.

Also see the compiler and language documentation and the basis library documentation.

Installation instructions here.

Usage

To compile a Futhark program to sequential C:

futhark-c prog.fut -o prog

Or maybe OpenCL:

futhark-opencl prog.fut -o prog

And then run it:

./prog < prog.input

To interpret a Futhark program:

futharki prog.fut < prog.input

Hacking

We try to make use of Github issues for organising our work. Issues tagged with newbie-friendly do not require deep knowledge of the code base.

Testing

Run the futhark-test tests to check how well we're doing. Use futhark-test -t if you're in a hurry and only want to check that all the tests type-check.

About

💥💻💥 A data-parallel functional programming language

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Haskell 93.5%
  • C 1.8%
  • Python 1.6%
  • Yacc 1.6%
  • Emacs Lisp 0.7%
  • Logos 0.5%
  • Other 0.3%