首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过限制谷歌V8中的Javascript支持来创建一种更简单的、特定于领域的语言?

通过限制谷歌V8中的Javascript支持来创建一种更简单的、特定于领域的语言?
EN

Stack Overflow用户
提问于 2012-12-15 03:41:50
回答 2查看 183关注 0票数 1

有没有可能通过限制谷歌V8对Javascript的支持来创建一种更简单的语言?我想在我自己的工具中嵌入V8引擎来运行动态脚本,并且喜欢V8预置源代码以提高速度的想法。但是,我需要严格限制语言中可能发生的事情。

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

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

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

EN

回答 2

Stack Overflow用户

发布于 2012-12-31 17:28:30

对于你想要的所有功能限制,你需要在V8上进行一个大手术,因为V8从来不是为如此激进的修改而设计的。

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

票数 0
EN

Stack Overflow用户

发布于 2013-12-26 22:20:47

从描述概述中进一步了解squirrel语言:http://squirrel-lang.org:“编译器和虚拟机在大约7k行的C++代码中放在一起,并且只增加大约100kb-150kb的可执行文件大小。”

享受吧!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13885239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档