gpt4 book ai didi

javascript - 通过限制 Google V8 中的 Javascript 支持来创建更简单的、特定领域的语言?

转载 作者:行者123 更新时间:2023-11-28 09:29:34 25 4
gpt4 key购买 nike

是否可以通过限制 Google V8 中的 Javascript 支持来创建更简单的语言?我想将 V8 引擎嵌入到我自己的工具中来运行动态脚本,并且喜欢 V8 预编译源代码以提高速度的想法。然而,我需要极大地限制语言中可能发生的事情。

这意味着没有数据容器(例如数组)的动态分配,没有导入的库,没有递归,没有线程。它在原理上与 Renderman 着色语言更相似,而不是通用语言。因此,"new"语言要简单得多,我只考虑 JS,因为熟悉的语法以及已经有一个很好的“编译器”(V8)的事实。我可能还希望它从 Chrome 的 native 代码 (NaCl) 环境中运行脚本代码,Google 似乎正在努力在 V8 中支持该环境。

重新定义 JS“语法”或定义语言的任何其他代码有多容易?

我的另一个选择是从头开始创建一种新的编译语言(也许使用 LLVM 的东西)。

最佳答案

对于您想要的所有功能限制,您需要对 V8 进行一次大手术,因为 V8 从来没有为如此彻底的修改而设计。

另一种解决方案是发明一种类似JavaScript的语言(具有您可以施加的所有限制)并将其编译为普通的JavaScript,然后您可以在V8上运行(或任何其他 JavaScript 引擎,就此而言)。这种方法的著名示例是 GWT(来自 Java)、Dart 和 TypeScript。

关于javascript - 通过限制 Google V8 中的 Javascript 支持来创建更简单的、特定领域的语言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13885239/

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