问题标签 [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.
haskell - 如何在 GHCJS 程序中定期执行操作?
应该setInterval
通过 Javascript 使用,还是使用基于线程的更惯用的解决方案?
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.9
Homebrew 在 OS X 上构建,因为webkitgtk3
目前2.4.9
仅针对. 因此寻找替代品。也是出于这个原因,我添加了ghcjs ——GHCJS 的其他用户很可能会觉得这篇文章很有趣。
javascript - 如何在 GHCJS 上将 Unboxed Vector 转换为 JS TypedArray?
我有一个 type 的元素Data.Vector.Unboxed.Vector Word32
。我想将其转换为本机 JS TypedArray
(Uint32Array
特别是 )。我知道toJsArray
and toJsValListOf
,但是这两个函数都处理列表,而不是向量,并且效率低下。如何将未装箱的Vector
直接转换为 JS TypedArray
?
nix - 这个 ghcjs-boot 错误可能意味着什么?
我正在尝试尝试 GHCJS,但在 ghcjs-boot 期间出现此错误:
(https://gist.github.com/Wizek/e4a73c6e9542a119ddd6)
Nix 用于安装 GHC 和兼容的 Node.js,但我不确定此错误是否与 Nix 有关。
- 有没有人见过这个错误?
- 或者知道可能出了什么问题?
- 或者关于如何解决它的任何想法?
haskell - 安装 GHCJS DOM 包时遇到问题
我正在尝试安装 GHCJS。当我跑步时cabal install ghcjs-dom
,它告诉我
好的,那我们就开始吧……
在这种情况下,弄乱这些有类型错误的源文件真的是明智之举,还是有更好的方法来解决这个问题?
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 安装它:
现在我迷路了。谷歌正在做空。有任何想法吗?
haskell - 在 osx 上为 GHCJS 安装 webkitgtk3
我正在尝试在 Mac OSX 上安装 ghcjs-dom 包。由于存在很多依赖关系,因此一直很坎坷。Webkitgtk3 是我目前的克星
我尝试了以下命令来安装这个吸盘:
...但没有这样的运气。有谁知道如何安装这个包?
haskell - 在没有 webkitgtk 的情况下使用 GHCJS-DOM
我已经安装了 GHCJS 并编译了一些“Hello, World”程序。现在我想使用 DOM。有谁知道是否可以在没有 webkitgtk 的情况下安装 ghcjs-dom 包?我在加载 webkitgtk 包时遇到了很多困难,此时我真的只想使用 DOM。
haskell - 尝试使用 GHCJS 编译器创建新 Stack 项目时出错
我正在尝试按照http://docs.haskellstack.org/en/stable/ghcjs.html中的说明在 NixOS 上使用 GHCJS 作为编译器建立一个新的 Stack 项目
我在我的 stack.yaml 文件中包含以下代码行(全部在一行,因为制表符空格似乎会产生问题):
我在运行时检索到以下错误消息stack setup
此外,我尝试删除该setup-info
字段,因为 Stack 抱怨它,让我的stack.yaml
文件如下:
它使用堆栈设置命令生成此输出:
有谁知道为什么会发生这种情况?
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
.
我有两个问题:
- 类似于
console.log
,在 ghcjs 中假设了哪些其他必须定义的主机依赖项? - JVM没有正常关闭是因为ghcjs在后台创建了事件循环还是其他原因?有什么办法可以避免这种情况并使程序正常退出?