A modern syntax for the λ-calculus.
Browse cluster: Functional Programming & Type Theory →Caramel is a modern syntax layer for the lambda calculus, implemented in approximately 350 lines of commented Haskell code. Rather than introducing a new language, it provides Haskell-inspired syntax sugars that expand to and contract from pure lambda calculus terms, enabling lambda calculus programs to be written and read more conveniently. The project includes transmogrifiers that convert lambda calculus programs to multiple target languages—including JavaScript, Python, Ruby, Lua, Scheme, Haskell, and Binary Lambda Calculus—and IO utilities (currently implemented for JavaScript) that bridge the gap between lambda-calculus datatypes and native datatypes, allowing Caramel programs to be executed in real-world programming environments.