Sal*_*Egg 7 lisp python code-translation
因为我想使用Lisp的语法和Python的库.
也许像Parenscript这样的工具可以生成Python代码而不是Javascript.
我一直在尝试使用针对Python字节码的Lisp编译器.
它只是一个概念验证玩具,但IMO是一个可行的路径,最终结果可以自由地调用和调用python(并且它将与任何python扩展库兼容).所有这些都保持了宏的力量(元编程可能是Python离lisp最远的区域).
相反,定位Python源代码非常烦人,因为有明确的语法限制使得编译Lisp变得困难(例如,赋值不是表达式,lambda中不允许使用语句,捕获的变量在Python 2.x中是只读的).
然而,VM运行时没有这些限制,Python字节码相当不错.
我的玩具目前可以针对Python 2.x,Python 3.x甚至可以使用PyPy(因此你也可以使用JIT编译器).
当然,从技术的角度来看,成为完全兼容的Common Lisp实现将是IMO无意义的,但是基于Python运行时类型并且与Python对象系统兼容的lisp方言可以替代地是具有实际应用的合理工具.