Unlambda

Unlambda
ParadigmNearly pure functional
Designed byDavid Madore
DeveloperDavid Madore
First appeared28 June 1999; 25 years ago (1999-06-28)
Stable release
2.0.0 / 20 December 1999; 24 years ago (1999-12-20)
Typing disciplineUntyped
Implementation languageScheme, C, Java
LicenseGPL 2.0 or later
Websitewww.madore.org/~david/programs/unlambda

Unlambda is a minimal, "nearly pure"[1] functional programming language invented by David Madore. It is based on combinatory logic, an expression system without the lambda operator or free variables. It relies mainly on two built-in functions (s and k) and an apply operator (written `, the backquote character). These alone make it Turing-complete, but there are also some input/output (I/O) functions to enable interacting with the user, some shortcut functions, and a lazy evaluation function. Variables are unsupported.

Unlambda is free and open-source software distributed under a GNU General Public License (GPL) 2.0 or later.[clarification needed]

  1. ^ Chu-Carroll, Mark C. (2006-08-11). "Friday Pathological Programming: Unlambda, or Programming Without Variables". Good Math, Bad Math (blog). ScienceBlogs.