Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于JVM的OCaml。有吗?_Jvm_Ocaml_Jvm Languages - Fatal编程技术网

用于JVM的OCaml。有吗?

用于JVM的OCaml。有吗?,jvm,ocaml,jvm-languages,Jvm,Ocaml,Jvm Languages,我看了一些新的JVM语言。这些天来,他们中的两个越来越引起人们的兴趣:Clojure和Scala。但以我的拙见,这两种方法都不理想。(让我们继续猜测吧,因为我不想在讨论中损害自己……) 实际上,我认为一个棘手的举动是MS的发明——F#。只需将OCaml语言迁移到.NET平台,就会产生一些令人敬畏的效果 问题是:是否有人为JVM编写了功能齐全的OCaml编译器?如果这是个好主意,你会怎么说?有链接指向将Java与OCaml集成的各种尝试 F#在某些方面与OCaml有所不同,因为它希望与.NET f

我看了一些新的JVM语言。这些天来,他们中的两个越来越引起人们的兴趣:Clojure和Scala。但以我的拙见,这两种方法都不理想。(让我们继续猜测吧,因为我不想在讨论中损害自己……)

实际上,我认为一个棘手的举动是MS的发明——F#。只需将OCaml语言迁移到.NET平台,就会产生一些令人敬畏的效果

问题是:是否有人为JVM编写了功能齐全的OCaml编译器?如果这是个好主意,你会怎么说?

有链接指向将Java与OCaml集成的各种尝试

F#在某些方面与OCaml有所不同,因为它希望与.NET framework一起工作,因此,正如Scala是一种混合语言一样,F#也是一种混合语言,因为在这两种语言中,您可以选择需要多少FP和需要多少OOP

这是一篇来自试图从Java迁移到OCaml的帖子,您可能会感兴趣。

咖啡醇怎么样:

Cafesterol是生成Java字节码的Objective Caml编译器套件的扩展。Cafesterol提供了一个ocamljava编译器,它是随目标Caml标准发行版发行的ocamlc/ocamlopt编译器的Java对应物。Cafesterol在其1.3版本中与Objective Caml的3.11.1版本一起构建。生成的Java类需要1.3版本的Cadimen才能运行,并且可以在任何Java1.6虚拟机上执行

Yeti在构造和类型系统上都有点不同(虽然在语法和Java集成的扩展上有点不同),它是基于类似于Ocaml的ML的。由于它对(递归)记录类型的强大支持,我认为它目前是最接近Ocaml的记录类型

对JVM来说有点像F

与JVM的“官方”OCaml非常接近。看起来质量很高


(还有,JVM的Haskell:)

谢谢,James。我不知道F#不复制OCaml。它们非常相似,如果你小心的话,你的OCaml源代码应该在F#中工作,但是他们为.NET扩展了F#。只是因为我好奇,在什么情况下OCaml代码不能像F#一样工作?单态类型、函子、结构子类型、多态变量、递归类型、递归模块,排版(格式模块)、宏(camlp4)、中的非整数数字文字patterns@LB-这里有一个线程处理您的问题:最后一个历史条目是“Version1.4(2010-02-06)”;