我有一堆(或将会有一堆)使用OpenCV库和SimpleCV的Python代码。我还有一堆Haskell代码可以执行其他一些操作,但是想调用我在Python中定义的一个函数。这一个函数返回三元组的双精度。
在Haskell中调用此函数的最佳方法是什么?
例如,一个简化的案例就是我在Python中有一个函数
# foo.py
import SimpleCV
def foo():
return (1.0,2.0,3.0)
我希望能够在Haskell中执行此操作
-- bar.hs
main = do
putStrLn $ show pyThingy.foo
我尝试过使用MissingPy(http://hackage.haskell.org/package/MissingPy),但每当我尝试导入本地文件时,我就得到了
*** Exception: <<MissingPy.Python.Types.PyException>>
谢谢!
答案 0 :(得分:8)
您可以使用Thrift。它适用于可扩展的跨语言服务开发,将软件堆栈与代码生成引擎相结合,构建可在C ++,Java, Python ,PHP,Ruby,Erlang,Perl, Haskell ,C#,Cocoa,JavaScript,Node.js,Smalltalk,OCaml和Delphi等语言。