Haskell在JVM上?
我想知道是否有某种方法可以使Haskell在JVM上运行(编译或解释)?
在Sourceforge上有JHaskell,但是这个似乎是空的和死的。
GHC使用LLVM作为编译器后端。 将LLVM编译成Java字节码是个好主意还是可能的? 或者也许使用不同的编译器后端?
你可能想要调查弗雷格 。 引用该页面:
“Frege是Haskell精神中的非严格,纯粹的函数式编程语言。”
“Frege程序被编译成Java并运行在JVM中。”
基于语言规范的一个简短的细读,弗雷格看起来几乎是一个Haskell克隆。 也许“Haskell精神”这个短语的意思是设定正确的期望。
我所知道的唯一与JVM中的haskell接近的语言是CAL。 CAL主要基于haskell,但并不具备所有haskell的function。 types系统与Haskell 98类似,缺less语法糖(如do
not notation)。
下面是Haskell和CAL的比较: Haskell程序员的CAL
eclipse插件非常精美和有用。
请注意,CAL是Open Quark框架的一部分。
- 主要网站: http : //openquark.org/Welcome.html
- 下载页面: http : //openquark.org/Download.html
- 来源Github: https : //github.com/levans/Open-Quark
GHCbuild立JVM有很大的但是可以克服的障碍:
http://www.haskell.org/haskellwiki/GHC:FAQ#Why_isn.27t_GHC_available_for_.NET_or_on_the_JVM.3F
(有一两年才能做到这一点?)
Haskell在JVM上运行得非常好。 参见Eta ,一个项目,该项目通过types安全的Java interop将完整的GHC 7.10.3 Haskell带入JVM。