探索ClojureScript中的极简Lisp解释器——Stilts
高跷Stilts是一个微小的解释型Lisp语言,深受Clojure的启发并在ClojureScript中实现。为什么?Stilts的诞生源于对ClojureScript中缺少eval
的需求与探索,因此成为了一个类似孪生项目。在这个项目中,我尝试创建一个无需JVM的ClojureScript编译器,希望未来能够实现自我编译。
此外,项目还结合了其他类似项目中的一些思路,特别关注纯功能嵌入式解释器的可行性。当评估环境可以精确控制、评估无副作用时,在更大应用中嵌入脚本引擎是否会更安全、更实用?目前还无法断言,但我认为答案可能是一个响亮的“是”。
功能特征包括:
-
支持
def
,do
,if
,fn*
,let*
,loop*
,quote
,recur
等特殊形式; -
支持宏扩展与运行时的
defmacro
; -
提供对评估环境的精确控制。
下载地址
用户评论