A statically typed and lazy evaluated implementation of Lambda Calculus.
lamb [--target {linux|windows}] [-i|-S|-c|--link] [-o FILE] [FILE...] FILE
The directory where lamb is being installed. default: ~/.lamb
$ make -j8
$ make install # to install ~/.lamb
$ export PATH="$HOME/.lamb/bin:$PATH"
' | ( | ) | -> | . | : | := | ^ | def | in | let | type | val | NAT | CHAR | STRING | IDWhere NAT, CHAR, STRING and ID are classes of lexemes. The classes are defined by regular expressions.
/[\t\n\r ]+//--[^\n]*\n//[0-9]+//'([^\\']|\\.)'//"([^\\"]|\\.)*"//[A-Z_a-z][A-Z_a-z0-9]*/SPACE and COMMENT are ignored by lexers.
type ID | val ID : ty | def ID asc := exp-> ty' ID | ID | ( ty ): ty^ ID asc . exp | let ID asc := exp in exp( exp )GPLv3.