0

看到 OCaml 编译器和 js_of_ocaml 都是用 OCaml 编写的,(对我来说)我应该能够编写一个使用的包装器似乎是合理的:

  1. OCamlcompilerlibs将 OCaml 源代码编译成,比如说Instruct.instruction list(使用Bytegen.compile_implementation),和
  2. js_of_ocaml 将指令列表编译成 JavaScript,从而绕过Parse_bytecode.

因此,我会将所有数据保存在内存中,避免写入然后读取cmo文件。我希望我可以将其写入cmo缓冲区并让 js_of_ocaml 处理它,但它似乎充其量是低效的。

这是现实的/以前做过吗,还是我只是想在错误的地方/方式加入这两个组件?

4

2 回答 2

0

他们说它更容易维护。

https://www.lri.fr/~conchon/TER/2012/3/js_of_ocaml.pdf

虚拟机提供了非常稳定的 API。...因此,无需在每个版本的语言中修改编译器以支持最新功能

于 2013-11-14T10:33:38.377 回答
0

我几乎可以肯定http://edit.ocamlpro.com/在浏览器中在线将源代码编译为 OCaml 字节码时使用了这种方法。

来源:https ://github.com/pcouderc/ocp-webedit

于 2013-11-14T08:44:26.367 回答