问题标签 [ghcjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
660 浏览

haskell - 如何在 GHCJS 程序中定期执行操作?

应该setInterval通过 Javascript 使用,还是使用基于线程的更惯用的解决方案?

0 投票
0 回答
167 浏览

haskell - 通过 WebKitGTK 以外的方式从 Haskell 访问 WebKit API

我试图了解是否有任何其他方法可以直接从 Haskell(ghc-7.10.2当前)程序访问 WebKit API,而不必通过类似的东西,这是围绕WebKitGTKwebkitgtk3的 Haskell 包装器。

WebKitGTK 似乎没有公开完整的 WebKit API,例如这些由 WebKit 提供:

但不是由 WebKitGTK:

有什么方法可以访问正在运行的 WebKit.app 或 Safari.app 的 WebKit API,尤其是在 OS X 以及 Linux 和 Windows 上?

PS 一些背景知识:我正在使用 GHCJS 开发一个应用程序,但由于 GHCJS 速度慢得多(我认为并没有与所有 Emacs IDE 功能集成),我也希望能够编译相同的(或几乎相同)使用 GHC 的代码库。因此,我熟悉了webkitgtk,甚至花了几天时间尝试通过webkitgtk-2.4.9Homebrew 在 OS X 上构建,因为webkitgtk3目前2.4.9针对. 因此寻找替代品。也是出于这个原因,我添加了 ——GHCJS 的其他用户很可能会觉得这篇文章很有趣。

0 投票
1 回答
239 浏览

javascript - 如何在 GHCJS 上将 Unboxed Vector 转换为 JS TypedArray?

我有一个 type 的元素Data.Vector.Unboxed.Vector Word32。我想将其转换为本机 JS TypedArrayUint32Array特别是 )。我知道toJsArrayand toJsValListOf,但是这两个函数都处理列表,而不是向量,并且效率低下。如何将未装箱的Vector直接转换为 JS TypedArray

0 投票
1 回答
121 浏览

nix - 这个 ghcjs-boot 错误可能意味着什么?

我正在尝试尝试 GHCJS,但在 ghcjs-boot 期间出现此错误:

https://gist.github.com/Wizek/e4a73c6e9542a119ddd6

Nix 用于安装 GHC 和兼容的 Node.js,但我不确定此错误是否与 Nix 有关。

  1. 有没有人见过这个错误?
  2. 或者知道可能出了什么问题?
  3. 或者关于如何解决它的任何想法?
0 投票
1 回答
81 浏览

haskell - 安装 GHCJS DOM 包时遇到问题

我正在尝试安装 GHCJS。当我跑步时cabal install ghcjs-dom,它告诉我

好的,那我们就开始吧……

在这种情况下,弄乱这些有类型错误的源文件真的是明智之举,还是有更好的方法来解决这个问题?

0 投票
1 回答
840 浏览

haskell - 为 Haskell (GHCJS) 安装 gtk3

我正在尝试在 Mac OSX (Yosemite) 上安装 GHCJS。到目前为止,我已经更新了 Alex 和 Happy 并安装了 gtk2hs-buildtools。现在当我运行时cabal install ghcjs-dom,我被告知我需要安装 pkg-config ...

嗯,pkg-config 嗯?

然后我继续运行cabal install ghcjs-dom,每次遇到一个依赖项,然后我必须用谷歌搜索并通过 brew 安装。这种情况大约发生 4 到 5 次。最后,我被困在gtk上。

在 brew install 失败后,我尝试使用 cabal 安装它:

现在我迷路了。谷歌正在做空。有任何想法吗?

0 投票
1 回答
694 浏览

haskell - 在 osx 上为 GHCJS 安装 webkitgtk3

我正在尝试在 Mac OSX 上安装 ghcjs-dom 包。由于存在很多依赖关系,因此一直很坎坷。Webkitgtk3 是我目前的克星

我尝试了以下命令来安装这个吸盘:

...但没有这样的运气。有谁知道如何安装这个包?

0 投票
1 回答
191 浏览

haskell - 在没有 webkitgtk 的情况下使用 GHCJS-DOM

我已经安装了 GHCJS 并编译了一些“Hello, World”程序。现在我想使用 DOM。有谁知道是否可以在没有 webkitgtk 的情况下安装 ghcjs-dom 包?我在加载 webkitgtk 包时遇到了很多困难,此时我真的只想使用 DOM。

0 投票
1 回答
576 浏览

haskell - 尝试使用 GHCJS 编译器创建新 Stack 项目时出错

我正在尝试按照http://docs.haskellstack.org/en/stable/ghcjs.html中的说明在 NixOS 上使用 GHCJS 作为编译器建立一个新的 Stack 项目

我在我的 stack.yaml 文件中包含以下代码行(全部在一行,因为制表符空格似乎会产生问题):

我在运行时检索到以下错误消息stack setup

此外,我尝试删除该setup-info字段,因为 Stack 抱怨它,让我的stack.yaml文件如下:

它使用堆栈设置命令生成此输出:

有谁知道为什么会发生这种情况?

0 投票
2 回答
429 浏览

haskell - 在 JVM 上运行编译为 JavaScript 的 Haskell

Java 8 有一个名为 Nashorn 的内置 JavaScript 引擎,因此实际上可以在 JVM 上运行编译为 JavaScript 的 Haskell。

以下程序有效:

我们可以通过以下方式运行它:(旁注:可以将其作为普通 Java 程序运行。jjs这只是在 JVM 上运行纯 JavaScript 代码的一种便捷方式)

在上面的代码中,console.log需要定义java.lang.System.print为 Nashorn 不提供默认的全局console对象,而 HaskellputStrLn似乎没有打印任何东西。

另一件事是 JVM 需要sysexit使用java.lang.System.exit.

我有两个问题:

  1. 类似于console.log,在 ghcjs 中假设了哪些其他必须定义的主机依赖项?
  2. JVM没有正常关闭是因为ghcjs在后台创建了事件循环还是其他原因?有什么办法可以避免这种情况并使程序正常退出?