适用于浏览器的可插入语言引擎.为什么不?

Vag*_*rdi 2 javascript browser

Firefox有一个SpiderMonkey javascript引擎.Chrome有V8 javascript引擎.

显然,这些引擎是一个单独的产品,浏览器利用某种接口API与它们进行交互.

另一方面,程序员在浏览器中渴望长时间使用他们喜欢的语言.所以,我们有像GWT(用于java),parenscript(用于常见的lisp),HJScript(用于haskell)等产品,并且我确信许多其他语言的许多其他库允许程序员使用他们喜欢的语言并生成客户端代码也是如此.

这个想法非常明显,我很惊讶它还没有实现.为什么不将浏览器的接口API发布到语言引擎,并允许网站提供自定义语言引擎作为可下载的包.使用当前的互联网速度3-4兆字节,一次下载对于大多数应用程序来说不是问题,对于内部网使用来说更是如此.

那么我们的可插拔引擎在哪里?

Jas*_*sta 10

你真的不需要可插拔的引擎,只是一个商定的字节码格式.谷歌现在正在使用基于LLVM的NaCl和PNaCl.因此,任何编译成LLVM字节码安全子集的程序都可以在浏览器中运行.