Releases: tiancaiamao/shen-go
Releases · tiancaiamao/shen-go
shen-go-1.0
- share the same code base with cora (another lisp of my own)
- rewrite the code generator
- upgrade ShenOS source to version 22.3
shen-go-1.0-rc.1
- a new implementation by compiling shen to Go, code to code translation
- the perfect fusion of native code and interpreting mode to support REPL
kl
now support load plugin to run the compiled shen code
shen-go-0.3
- support native call via Go plugin mechanism, add load-plugin primitive
- upgrade Shen source code to release 21
- remove the kl interpreter
- revise primitives function call protocol implementation, make them uniform with native call
- change VM dispatch method from switch to jump table
The performance of this version decreased, but it's more flexible now.
shen-go-0.2
- huge improvement of the vm, avoid allocation in environment as much as possible
- peephole optimization for some functions
- change symbol representation and some improvement in runtime
This release is nearly twice faster than v0.1.
shen-go-0.1
- kl: A naive kl interpreter
- compiler: KL to bytecode compiler, writen in shen
- vm: Abstract machine, used to execute the generated bytecode, written in Go