gpt4 book ai didi

javascript - 使用来自 Haskell 的 javascript 库

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:31:51 26 4
gpt4 key购买 nike

我是 Haskell 的新手。最近,我听说了这个名为 GHCJs 的编译器,您可以在其中使用 Haskell 编写代码,然后将其编译为 Javascript。

我对使用 three.js 和 webgl 等库制作很酷的交互式 3d 动画很感兴趣。使用 GHCJ 时是否可以从 Haskell 调用这些 javascript 库?

最佳答案

是的,您可以从 ghcjs 编译的 Haskell 调用 Javascript 库。

这是一个简单的例子:

{-# LANGUAGE JavaScriptFFI      #-}
{-# LANGUAGE OverloadedStrings #-}

import qualified Data.JSString as T
import qualified GHCJS.Foreign

foreign import javascript unsafe "alert($1)" alert :: T.JSString -> IO ()

main = alert "hello world"

正如您从这个示例中看到的,您使用了foreign import javascript 功能使 JS 函数在您的 Haskell 程序中可用。

我不确定是否有官方的 WebGL 界面库,但在网络上快速搜索表明其他人已经创建了部分界面库——例如见this example .基本上,您必须为应用程序使用的函数创建 foreign 声明。

对于 three.js,我找到了这个 github 仓库:

https://github.com/manyoo/ghcjs-three

也可以从 JS 调用 Haskell 代码,即看到这个 SO 线程:

How to call Haskell from Javascript with GHCJS

关于javascript - 使用来自 Haskell 的 javascript 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38155884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com