OCAML para JVM. Existe alguma? [fechado
-
20-09-2019 - |
Pergunta
Dei uma olhada em alguns novos idiomas para a JVM. Dois deles estão ganhando muito interesse hoje em dia: Clojure e Scala. Mas, na minha humilde opinião, os dois não são ideais. (Vamos manter uma especulação, porque não quero me danificar discutindo ..)
O que eu realmente vejo como uma jogada complicada é a invenção da MS - f#. Simplesmente mover a linguagem OCAML para a plataforma .NET produz um pouco incrível.
A pergunta é: alguém conseguiu escrever um compilador OCAML completo para a JVM? O que você diria se essa é uma boa ideia?
Solução
"Ocaml e Java" tem links para várias tentativas de integrar o Java ao OCAML.
F# é um pouco diferente do OCAML em aspectos devido ao desejo de fazê -lo trabalhar com a estrutura .NET, portanto, assim como o Scala é uma linguagem híbrida, assim como F#, como você pode escolher quanto FP deseja e quanto OOP você deseja, em qualquer idioma.
"Java, Ocaml e F#" é um post de alguém que tenta passar de Java para Ocaml, que você pode achar interessante.
Outras dicas
Que tal cafesterol: http://cafesterol.x9c.fr/
O cafesterol é uma extensão do suíte de compilador CAML objetivo que gera bytecode java. O Cafesterol fornece um compilador de ocamljava que é a contraparte Java dos compiladores OCAMLC/OCAMLOPT distribuídos com a distribuição padrão CAML objetiva. O cafesterol, em sua versão 1.3, constrói com a versão 3.11.1 do objetivo CAML. As classes Java produzidas precisam da versão 1.3 do cadmio para executar e podem ser executadas em qualquer máquina virtual Java 1.6.
Yeti é (embora sintaticamente um pouco diferente e extensões para a integração de Java) tanto no sistema de construções quanto no Typey, é baseado no ML como o OCAML. Devido ao seu poderoso suporte para tipos de registros (recursivos), acho que é atualmente o que se aproxima da OCAML.
Tipo de f# para a JVM.
OCAML-JAVA é o mais próximo de uma OCAML "oficial" para a JVM possível. Parece ser uma qualidade muito alta.
(Também, Haskell para a JVM: Frege)