This is a Repo that was build alongside eatonphil from the twitch stream.
Part 1: A lexer Part 2: Parsing Part 3: AST walking interpreter Part 4: Cleanup and Fibonacci
Give him a star on the original repo and follow him on twitch if you like the content.
$ go mod tidy
$ go test
$ go build
$ cat examples/fib.scm
(fn fib (a)
(if (< a 2)
a
(add (fib (sub a 1)) (fib (sub a 2)))))
(fib 11)
$ ./livescheme examples/fib.scm
89
- Constant propagation
- More keywords
- Types(static type checking)