python - 有什么工具可以将 Lisp 代码翻译成 Python 吗?

标签 python lisp code-translation

<分区>

因为我想使用 Lisp 的语法和 Python 的库。

也许有些工具(例如 Parenscript)会生成 Python 代码而不是 Javascript。

最佳答案

我一直在尝试使用 Lisp compiler targeting Python bytecode .

你可以看到一个small video here .

这只是一个概念验证玩具,但它是 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 方言可能是具有实际应用的合理工具。

关于python - 有什么工具可以将 Lisp 代码翻译成 Python 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18544918/

相关文章:

unicode - 任何(免费的)Lisp 实现来支持 unicode 整理(UCA;ISO 1465)?

c - MIPS:将 C 代码转换为 MIPS 函数调用和返回中的问题

java - 使用 IEnumertor 或 IEnumerable c# 接口(interface)?

Python selenium chrome 驱动程序 SSL : CERTIFICATE_VERIFY_FAILED unable to get local issuer certificate

python - 在python中按索引对二维数据进行分箱

lisp - 简单的 LISP 问题

functional-programming - 将命令式转换为函数式代码

Python Pandas 比较数据集中的属性并计算特定城市的总数

python - 如何使用 Python 查找字符串中第一个字母重复了多少次?

search - Emacs Lisp 向后搜索