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 are developed at DIKU at the University of Copenhagen, originally as part of the HIPERFIT centre. The language and compiler are quite stable and suitable for practical programming.
For more information see the website.
There also exists a book, Parallel Programming in Futhark, that serves as an extensive introduction and guide.
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:
futhark run prog.fut < prog.input
We try to make use of GitHub issues for organising our work. Issues tagged with good first issue do not require deep knowledge of the code base.
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.