1

我目前正在研究不同的虚拟机来运行许多不同的脚本语言(以嵌入式方式)。

引起我注意的两个虚拟机是:

  • LLVM:虽然我看到过建议不要将 LLVM 用作 VM 的帖子,但它似乎确实有很多好处。它可以进行优化,JIT,已经有一个很好的调试器,等等。虽然似乎没有太多关于以这种方式使用 LLVM 的文档,但有 Cling 能够将 c++11 作为解释语言运行(这令人印象深刻),以及命令行工具“lli”。

  • libJIT:从技术上讲,这不是虚拟机,但提供了创建虚拟机所需的工具。

所以我的问题是:

  1. 有没有人有使用这些虚拟机的经验并且可以提供消极/积极的体验。
  2. 我浏览了 LLVM 和 libJIT 的大量文档,但想检查是否有人对其他资源(尤其是 LLVM)有任何建议。
  3. 还有其他我应该考虑的虚拟机吗?我已经进行了一些相当广泛的搜索,所以这不是关于那里有哪些虚拟机的问题,而是人们使用过并会推荐的软件之一。

至于虚拟机的实际使用,我打算将虚拟机嵌入到 c++ 程序中,以提供可编写脚本的用户环境。我已经在使用 Lua 来做一些事情,但出于各种原因,我也希望能够支持其他语言。

最后,我看过 Parrot,但从我读过的一些关于它的东西中,我有点犹豫要不要使用它(也许有人可以说服我?)。

更新

我遇到了http://vmkit.llvm.org,它看起来像是使用 LLVM 创建一个成熟的 VM。

4

0 回答 0