使用ghcjs将Haskell模块编译为Javascript

Sal*_*Sal 12 haskell ghcjs

是否可以使用ghcjs?将Haskell模块编译为JS ?我玩它,但它似乎需要main在生成JS之前定义函数.下面的玩具代码:

module Test where

add :: Int -> Int -> Int
add x y = x + y 
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚如何使用它将其编译为JS ghcjs.如果未定义main函数,它将仅编译.hi和.o文件.如果我能想出办法来把它编译成JS(在适当的Z-encoded功能名称,以及相应的JS对象,像我们在FFI为C),然后我可以使用更强大的Haskell库,例如unordered-containersvector实现一些算法,编译成JS,并Elm通过JS FFI使用.

Fay似乎有能力做到这一点.我想首先调查一下ghcjs.

Jus*_*geb 6

我刚刚在IRC询问了ghcjs作者(luite),他说,"还没有好办法直接导出一个库."

不过,他似乎对支持这种能力非常感兴趣,所以我希望并乐观地认为这将在不久的将来发生变化.观看此问题的地方是在github上请求此功能的票证.