Raphael Jacobs 66022a0438 | ||
---|---|---|
app | ||
lib | ||
src | ||
test | ||
.gitignore | ||
ChangeLog.md | ||
LICENSE | ||
README.md | ||
Setup.hs | ||
lambdatest.cabal | ||
package.yaml | ||
stack.yaml | ||
stack.yaml.lock |
README.md
lambdatest
This repository contains (will contain) a bunch of unsorted interpreters for various "flavors" of lambda calculus, lisp languages and alike. It's a collection of experiments in implementing interpreters and compilers.
Currently, only a simple untyped lambda calculus is implemented, together with a beta reduction thing. More will be surely added in the future.
Typed-1 is an experiment at writing a lisp evaluator with as many type guarantees as possible, too many. You can only build the AST if everything has the correct type, which is a terrible idea and makes parsing very tricky (could not write a parser, probably just need to throw some 20 more ghc extensions at it).
Typed-0 is a work-in-progress regular lisp interpreter without the fancy type stuff.