我看了一些JVM的新语言。其中两个人现在非常感兴趣:Clojure和Scala。但在我看来,他们俩都不理想。 (让我们继续猜测,因为我不想损害自己的讨论......)
我实际上认为这是一个棘手的举动是MS的发明--F#。简单地将OCaml语言移动到.NET平台会产生一些令人敬畏的效果。
问题是:有人设法为JVM编写功能齐全的OCaml编译器吗?如果这是一个好主意,你会怎么说?
答案 0 :(得分:14)
"OCaml and Java"链接到将Java与OCaml集成的各种尝试。
由于希望将它与.NET框架一起使用,因此F#与OCaml有所不同,因此,就像Scala是混合语言一样,F#也是如此,因为你可以选择你需要多少FP用两种语言你想要多少OOP。"Java, OCaml, and F#"是有人试图从Java迁移到OCaml的帖子,你可能会感兴趣。
答案 1 :(得分:12)
Cafesterol怎么样:http://cafesterol.x9c.fr/
Cafesterol是Objective Caml编译器套件的扩展,它生成Java字节码。 Cafesterol提供了一个ocamljava编译器,它是与Objective Caml标准分发一起分发的ocamlc / ocamlopt编译器的Java版本。 Cafesterol,其1.3版本使用3.11.1版本的Objective Caml构建。生成的Java类需要运行1.3版本的Cad,并且可以在任何Java 1.6虚拟机上执行。
答案 2 :(得分:4)
Yeti(在语法上有点不同,Java-Integration的扩展)在构造和类型系统中它都基于像Ocaml这样的ML。由于它对(递归)记录类型的强大支持,我认为它目前是最接近Ocaml的那个。
JVM的F#排序。
答案 3 :(得分:3)
Ocaml-Java尽可能接近JVM的“官方”OCaml。它看起来质量很高。
(另外,Jask的Haskell:Frege)