Futhark 0.12.1 release, Haskell write small functional programming language

Futhark 0.12.1 released. Futhark is a small functional programming language, developed using the Haskell using a static type, and the parallel data array pure function, its depth optimizing compiler in advance, the code generated by the GPU OpenCL. Futhark not designed to graphical programming, by using a GPU to accelerate calculations in parallel array, nested data support the conventional parallel processing.

The main change in this version is invisible to the user's internal improvements, the development team rewrote the internal parallelism kernels said this before in PPoPP'19 paper content proposed very similar, which aims to make the application parallelism and GPU complexity of mapping parallelism clearer.

Futhark was initially a very serious language, it has a completely monomorphic properties, almost no pattern matching, and is a complete order (although there are some syntactic sugar attempted to imitate second order function). This is because the main goal of compiling the Futhark (GPU) is a very harsh environment, the development team did not want to support any compiler can not effectively function.

Over time, these restrictions reduce:

  • By the end of 2016 it increased by a higher-order module system.
  • 2017 added Records.
  • Adding higher-order functions and parametric polymorphism in the 0.4 version.

Recursive addition, lack Futhark another functional characteristic in common language, i.e., the type of polymerization (sum type, otherwise known as algebraic data types), this means the most typical such options and any other type of functional programming language features are can not be expressed in Futhark, other types of enumeration must be encoded using an integer. Most functional languages ​​are implemented through the type of polymerization pointer structure, which is not acceptable for Futhark.

This version solves the problem that is specific programs to view:

https://futhark-lang.org/blog/2019-08-21-futhark-0.12.1-released.html

Guess you like

Origin www.oschina.net/news/109324/futhark-0-12-1-released