Clean

Purely functional language from the Netherlands with uniqueness types for safe in-place mutation without monads.

static compiled since 1987 functionallazy

Clean is a lazily-evaluated, purely functional language similar to Haskell, but with uniqueness types instead of monads for handling state and I/O. Uniqueness types allow safe in-place mutation of values when it can be proved only one reference exists. Clean compiles to highly efficient native code and influenced the linear and affine type systems in Rust and other languages.

Missing something? Add a tool, framework, or book via a PR.
Contribute