Welcome to the Clean Wiki! the online home of Clean.

Clean is a general purpose, state-of-the-art, pure and lazy functional programming language designed for making real-world applications. Some of its most notable language features are uniqueness typing, dynamic typing, and generic functions. Have a look at a quick impression of Clean.

The Clean System is available for the Windows, Linux, and Mac operating systems.

PLNL2019 in Nijmegen!

This year the Second Workshop on Programming Languages in The Netherlands is hosted in Nijmegen.

Downloading Clean

We are migrating towards continuous integration and more frequent releases. Both nightly developments builds and the traditionally versioned Clean 3.0 are publicly available from our download page.

The iTask System

Much of the current Clean related research is focused around the iTask system. This is a toolkit for building web-based workflow management systems using a powerful workflow language embedded in Clean.

Read more about the iTask system...

Cloogle

Cloogle is the official Clean search engine that indexes all standard libraries, external libraries, compiler errors, ABC instructions, builtins and syntax elements.

Read more about Cloogle...

The mTask System

The mTask system (mTasks) is a framework for programming complete Internet of Things (IoT) systems from a single source. The framework is powered by a multi-backend tagless embedded DSL embedded in the pure functional programming language Clean. With the bytecode generation backend and the ITasks integration, mTask tasks can be embedded in iTasks programs and shared data sources can be synchronized. The client runtime system, written in portable C, runs on embedded devices such as Arduino/ESP8266/ESP32 boards but also on full fledged Linux, Windows and MacOS machines.

Read more about the mTask system...