如何通过Java运行haskell函数
假设我在数学中有一个haskell函数。hs
如何通过Java程序运行add函数,并将输出存储为变量
可能是这样的:
public int runHaskell(String haskellFile) {
int output;
//run add function from file 'math.hs' and store result to output
return output;
}
(如果需要,我还可以访问目标文件:math.o和解释器文件math.hi以及可执行文件main.exe)
# 1 楼答案
这可能会有所帮助:http://www.haskell.org/haskellwiki/Applications_and_libraries/Interfacing_other_languages。还有Jaskell,它可能能够在JVM下运行整个源代码,使您能够轻松地进行交互
# 2 楼答案
简单(但笨拙)的方法:
^{}
然后你可以监听Haskell程序的输出,然后解析它的结果
或者,您可以为JNI编写一个小包装器,直接调用Haskell的内容
# 3 楼答案
可以使用一些RPC框架,例如,^ a1},它支持C++、java、python、php、Ruby、erlang、perl、Haskell、Cype、CoCa、SimalTalk和OcAML。p>
还有BERT-RPCclient and server library for Haskell,但我不确定是否存在Java端口