This was written to demonstrate how to use closures to build embedded DSLs in go.
$ go get jsouthworth.net/go/lisp
$ go run jsouthworth.net/go/lisp/cmd/repl
]=> (load "test.scm")
]=> (map square (list 1 2 3 4))
]=> (map fib (10 20 30 40))
MIT see LICENSE