Show HN: Spaik, a Lisp compiler/VM with a moving GC written in Rust(github.com)
github.com
Show HN: Spaik, a Lisp compiler/VM with a moving GC written in Rust
https://github.com/snyball/spaik
5 コメント
Awesome! Have you considered doing another step further -- emitting native code? :) I am a little biased because I've only ever written a Lisp -> machine code compiler, not bytecode, but I'd like to write a bytecode compiler one day.
I've considered emitting LLVM, or using C as a high-level assembly language, but not directly to native code. I've been wanting to write some simple arcade-like games using spaik, and it'd be a shame to either restrict it to a single architecture or needing separate implementations. (that, and being able to benefit from the 100s of lifetimes spent optimizing LLVM and gcc code generation.)
Spaik also doesn't have an AST-level interpreter for evaluating macros, it compiles and runs the bytecode on-the-fly for macro-expansions declared and used in the same compilation unit. And I figured it'd be even more of a hassle with native code.
Spaik also doesn't have an AST-level interpreter for evaluating macros, it compiles and runs the bytecode on-the-fly for macro-expansions declared and used in the same compilation unit. And I figured it'd be even more of a hassle with native code.
It'd be great to get some feedback on the design, use of Rust, etc. given the fact that this was such a fun learning experience.