【问题标题】:Looking for an embeddable scripting language for C++ with 64-bit support and Cross Platform寻找具有 64 位支持和跨平台的 C++ 嵌入式脚本语言
【发布时间】:2010-07-22 07:58:59
【问题描述】:

我正在寻找一种适用于 32 位和 64 位机器以及 Windows 和 Linux 的脚本语言。我将把它嵌入到 C++ 应用程序中,所以我更喜欢用 C++ 而不是 C 原生编写它。我也希望脚本具有线程/异步支持。

到目前为止,我研究过的语言是 GameMonkey、Lua 和 V8 JavaScript 引擎。迄今为止,V8 JavaScript 最具吸引力。我真的不想使用 GameMonkey,因为 AFAIK 它不支持 64 位寻址。 Lua 是用 C 编写的,所以我可能会使用 C++ 包装器,但我真的不喜欢混合 C 和 C++ 代码。

那么我可以考虑其他一些替代方案吗?

【问题讨论】:

  • Lua 可以直接编译为 C++。
  • 感谢 lhf,这是个好消息 :)
  • 也感谢 starblue 修复了我的标签 :)

标签: c++ scripting-language embedded-language


【解决方案1】:

我个人更喜欢Lua 而不是其他人。也许是因为它被 WoW 使用,我自己对 WoW 插件进行了调整。但是我看到了很多好的意见,即使是在 SO 上也是如此。

【讨论】:

  • 是的,我选择使用 Lua。谢谢:)
【解决方案2】:

我说 Lua。它是超便携的(它甚至可以在 PalmOS、WindowsCE 和 DOS 下运行!)、体积小(200-300k)、速度快,并且很容易与 C/C++ 交互。

此外,Michael Pall 在他的 LUA JIT 实施方面取得了惊人的进步。他目前的 beta-4 支持 x86 和 x86_64 jitting,并且几乎击败了我所知道的所有解释器语言:http://luajit.org/

【讨论】:

  • 哇,这太令人兴奋了,我将使用 lua JIT :)。谢谢。
【解决方案3】:

也许FalconChaiScriptIO 甚至AngelScript 可能符合您的要求?

【讨论】:

  • 谢谢,以前没见过 Falcon / ChaiScript / 或 IO。 Falcon 是一种有趣的语言。
  • 是的,我在一个大项目中使用它,由于某些原因,它比 Python 更好。也就是说,我想它可以在 64 位上运行,但我还没有尝试过。
  • 只是想验证 64 位 ChaiScript 是否有效。只在Linux上正式测试过,但发现0个问题。
【解决方案4】:

您也可以使用Squirrel,它是 C++,具有类似 C/Java 的语法,支持 OO(甚至是类继承)和许多简洁的东西。它在速度上与 Lua 相当,但编译后的代码量略大。

如果您使用 C++ 编写程序,您可能更喜欢它而不是 Lua,而且语法更吸引人(如果您经常编写 C++ 代码,对眼睛和您的工作效率而言)。

【讨论】:

    【解决方案5】:

    如果你使用 qt,你可以使用qtscript。 否则python 可能是个好主意。

    【讨论】:

      猜你喜欢
      • 2011-10-21
      • 1970-01-01
      • 2014-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-25
      • 2011-09-05
      • 1970-01-01
      相关资源
      最近更新 更多