我想使用 Smalltalk 作为 C 中的嵌入式 DSL 引擎。不需要插件,整个自定义环境将由我制作。所以几乎ObjectEngine都会被保留下来。这可能吗?我目前正在尝试,但我们将不胜感激。
-- 编辑--
任何 Smalltalk 实现嵌入指南也将受到赞赏。 (除了 GNU Smalltalk。因为它的许可证...)
最佳答案
Pharo/Squeak 很难做到这一点:
- 对象引擎依赖于许多原语,因此需要存在许多插件。前一段时间,大多数插件无法静态编译。不知道现在是不是这样?
- 构建一个完整的自定义环境非常棘手,因为这很可能意味着要剥离现有图像。有各种项目试图构建基础设施来引导新图像,但我还没有看到可行的解决方案。
正如 Davorin 所写,Dolphin Smalltalk 可以部署为 DLL。同样,这对于 Cincom Smalltalk 和 Smalltalk/X 也是可能的。不过,所有这些 Smalltalk 都是商业性的。
总而言之,您最好还是看看已经在您的上下文中多次应用过的 Lua 或 Python。
关于dsl - 是否可以在没有任何插件的情况下将 Squeak VM 嵌入到 C 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6339886/