An interpreted lisp, written in Go.
All of the basic lisp features you would expected, and a few extra:
- namespaces
(namespace test ...) - importing files
(import core/math) forloop construct- errors and "guards" (think try/except)
(guard (error "help")) - "real" macros
- hashmap values
{ "a" 1 } - value expansions
(mylist...) - type hints for functions
(defn onlyints (a#int) (println 'a was an int'))
See examples for more!
install #######
On linux: (requires package libreadline-dev)
go get github.com/ktravis/sigmobuild
go build ./cmd/sigmorun
./sigmo # cli
./sigmo test.mo # run a file
./sigmo -c '(print "hi")' # run a single command
./sigmo -i test.mo # run a file, drop into cli with context