Clean

From Clean
Jump to navigationJump to search

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.

Downloading Clean

Download-clean.png

The iTask System

Itasks-logo.png

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-logo.png

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...

Upcoming events

Language

Learn more about the Clean language by downloading a distribution, the libraries, or reading the documentation, related publications, or FAQ.


Community

All development is happening in on gitlab nowadays. See the clean-and-itasks group for everything iTasks and the compiler-and-rts group for everything core.

Find out what is going on in the Clean community by checking out the projects that use Clean, checkout the IRC channel (#cleanlang@libera.chat), or joining our mailing lists.

About

Read more about the latest developments, upcoming and past events, or how to contact us.