Google chrome 将Dart虚拟机作为Chrome插件提供有多困难?

Google chrome 将Dart虚拟机作为Chrome插件提供有多困难?,google-chrome,google-chrome-extension,dart,Google Chrome,Google Chrome Extension,Dart,Dart和NaCl都是操作系统项目。我想知道提供一个可以在任何Chrome浏览器上执行Dart代码的NaCl插件有多难?! Pepper C/C++API看起来比包装的JavaScript API好得多。Nacl有几个安全限制,使得在其中执行Jitting VM非常困难(但并非不可能)。它也不能很好地访问DOM,这将严重限制VM的可用性。您可能只希望这种方法使用以DART为脚本引擎的C++程序(例如在游戏中)。 似乎有一个项目试图移植v8: 他们的自述描述了一些问题: NaCl不允许在代码段中

Dart和NaCl都是操作系统项目。我想知道提供一个可以在任何Chrome浏览器上执行Dart代码的NaCl插件有多难?!
Pepper C/C++API看起来比包装的JavaScript API好得多。

Nacl有几个安全限制,使得在其中执行Jitting VM非常困难(但并非不可能)。它也不能很好地访问DOM,这将严重限制VM的可用性。您可能只希望这种方法使用以DART为脚本引擎的C++程序(例如在游戏中)。 似乎有一个项目试图移植v8:

他们的自述描述了一些问题:

  • NaCl不允许在代码段中使用数据
  • 对于动态加载的代码,必须从标记为NaCl的特殊区域提供可执行内存。我猜Nacl想对它进行一些检查,这可能会减慢执行速度
  • 所有代码插入/删除/自我修改必须通过NaCl服务运行时调用执行
  • VM发出的代码必须符合NaCl安全约束(例如间接跳转的沙箱、指令对齐)

这样做的目的是什么?Chrome的Dart工作已经在进行中了?我也想知道这一点@Gunter将允许在Chrome中发布Dart(也允许定制版本的Dart!),我不希望NaCl实现能在一天内完成。Nacl对DOM的访问有限。这需要付出巨大的努力才能使用,而且仍然不能提供Dart浏览器抽象的最大优势之一。不幸的是,它已经进行了很长时间,没有任何承诺很快完成。让我更不感兴趣的是Dartium目前的状况,它没有针对chrome打包应用程序的本地API。围绕Javascript API进行包装不是最佳方式。PPAPI至少有一个C++绑定,当它被省略时,它可能会给出更接近的面向对象抽象。