JVM上的Haskell?

jeh*_*eha 81 haskell jvm jvm-languages frege

我想知道是否有某种方法可以让Haskell在JVM上运行(编译或解释)?

在Sourceforge上存在JHaskell但这个似乎是空的并且已经死了.

GHC使用LLVM作为编译器后端.将LLVM编译为Java字节码是一个好主意还是可能的?或者也许使用不同的编译器后端?

Dan*_*att 77

你可能想调查弗雷格.从该页面引用:

"Frege是一种非严格的纯函数式编程语言,具有Haskell的精神."

"Frege程序被编译为Java并在JVM中运行."

基于对语言规范的简要阅读,Frege看起来几乎是一个Haskell克隆.或许"在哈斯克尔的精神中"这句话很简单,旨在设定适当的期望.

  • 看起来他们已经稍微更新了他们的页面 - 现在显示为“Frege 是 JVM 的 Haskell”。在我看来,这是一个更有力的主张。 (2认同)

小智 20

Haskell在JVM上运行得很漂亮.请参阅Eta,这是一个将完整的GHC 7.10.3 Haskell带入类型安全的Java互操作JVM的项目.


isl*_*lon 11

我所知道的唯一一种与JVM中的haskell接近的语言是CAL.CAL主要基于haskell,但它没有haskell的所有功能.类型系统类似于Haskell 98,并且do缺少符号表示法.

以下是Haskell和CAL的比较:Haskell程序员的CAL

eclipse插件非常精致且有用.

请注意,CAL是Open Quark框架的一部分.


ami*_*dfv 9

对于JVM,GHC建设有很大但可以克服的障碍:

http://www.haskell.org/haskellwiki/GHC:FAQ#Why_isn.27t_GHC_available_for_.NET_or_on_the_JVM.3F

(有一两年的时间来实现它吗?)