gpt4 book ai didi

javascript - 将 JavaScript 转换为 Python 字节码

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:20:32 24 4
gpt4 key购买 nike

我正在尝试在纯 Python 环境 (Google AppEngine) 中执行简单的 JavaScript 代码。

我已经尝试过 PYJON,但它似乎还不够成熟,无法真正使用(它不处理例如前向引用函数或 do-while,它卡在数组使用上)。

一个想法是使用 pynarcissus 将 JavaScript 转换为语法树,然后将这棵树转换为可以编译为 Python 字节码的 Python AST。

有人做过吗?这个想法有什么问题吗?

最佳答案

我用 ply 做了类似的事情,对于 VBScript 和一种我已经研究了一段时间的新语言,但我不是构建 AST 然后转换为 Python AST,而是直接构建 Python AST,使用它的节点类并偶尔进行子类化和覆盖一些不太适合的内容。

由于您可以依靠 pynarcissus 为 Javascript 构建 AST,转换 AST 可能更容易,但我认为值得检查一下使用它的解析器构建 Python AST 是否不是更好的方法。

据我所知,只要语言可以在句法上简化为通用方言,这种方法就没有内在问题。这是一项艰巨的工作,但可以做到。我这样做是因为我没有可用的解析器,而编写一个解析器来构建 AST 是没有意义的。对于 VBScript,我只处理录制的宏,因此代码非常稳定,主要是单行代码。

关于javascript - 将 JavaScript 转换为 Python 字节码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10398315/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com