js_of_ocaml可以从 OCaml 编译器编译内存中的数据结构



鉴于OCaml编译器和js_of_ocaml都是用OCaml编写的,因此(对我来说)我应该能够编写一个使用以下内容的包装器似乎是合理的:

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

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

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

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

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

他们说它更容易维护。

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

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

相关内容

  • 没有找到相关文章

最新更新