LOLA

Lots Of Lambda Abstractions

LOLA is a lazy, purely functional programming language based on lambda-calculus.  Everything in LOLA is a lambda abstraction, and there are no built-in functions.  (Originally I planned to use built-ins for input and output, but then I decided that an I/O mechanism that makes these unnecessary would be better.)

I dreamed up the idea of this language long before I read the bit of David Madore's Unlambda page that states that Unlambda is a "purely functional language", but in an unconventional sense – namely that only functions have first-class citizenship.  Unlambda isn't, on the other hand, purely functional in the conventional sense of functions not having side effects.  LOLA is purely functional in both senses.

Language specification

Implementation