问题标签 [haste]

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 投票
1 回答
396 浏览

javascript - Haste Haskell->JS compiler does not work on OSX, displaying specific error message when calling hastec

I've tried setting up Haste using the official installation guide. Trying to compile a Hello World produces the following error:

I've then tried to compile the portable version. The error is now:

Running haste-boot does not amend the error.

0 投票
1 回答
105 浏览

haskell - Haskell cabal 在构建期间编译 .js

假设我正在构建一个使用 haskell 作为服务器端和客户端代码的 Web 应用程序。在构建阶段,我想ghc用一些 haskell to js transpiler 编译服务器端代码和客户端代码。

haskell 转译器工具公开了一个我需要提供文件的可执行.hs文件,它将编译为.js文件。如何在 cabal 中指定在构建阶段运行外部程序?我可以看到,该UserHooks字段buildHook具有返回类型IO(),所以理论上我可以使用例如 shelly 库来执行 shell 代码来运行转译器,但我不知道这是否是最干净的解决方案。

0 投票
1 回答
182 浏览

haskell - 在 Haste 和 Haskell 中使用管道睡觉

我正在开发一个大量使用 Pipes 库的 Haskell 程序。我正在将库的一部分移植到Haste。我遇到绊脚石的一个地方是javascript处理睡眠的奇怪方式。

我想写的是一个简单的管道,它在发送结果之前会延迟

但是,睡眠似乎像回调一样工作。

我试着做

但是类型没有正确排列。有没有办法获得延迟管道?

0 投票
1 回答
124 浏览

haskell - 基本 Haste 使用的“递归过多”错误

我正在尝试将一个小的前端应用程序与 . 放在一起haste,但我在 Firefox 上遇到了错误。这是错误的最小示例:

我的哈斯克尔:

我的 HTML:

我的编译输出:

加载页面时我的 Firefox 控制台:

我究竟做错了什么?

0 投票
0 回答
385 浏览

haskell - 启动急速问题

我在运行时遇到问题(尽管使用 plainhaste-boot --force --local启动最新版本时也会发生同样的事情)。它取得了一些进展,然后失败了cabalhaste-boot

我已经手动安装bytestring-0.10.4.1了,cabal install这样:

haste版本仍然不合作。

根据该错误消息,看起来需要我先运行安装适当的bytestring版本,但由于与安装相关的错误而失败。haste-insthaste-boothaste-bootbytestring

关于我可以在这里做什么的任何想法?

编辑:

相关片段似乎比安装中的实际错误发生得早得多:


编辑 2:杰弗里,您请求的终端会话会将这篇文章置于 30000 个字符的限制之上。这是一个指向它的pastebin 链接

0 投票
1 回答
788 浏览

haskell - GHCJS/Haste 可以自己编译吗?

如果是这样,那么我可以让人们通过更改其(Haskell)配置来玩弄我的项目:在浏览器中重新编译它,然后在浏览器中重新运行它。我不在乎速度。我只想能够在浏览器中演示一个难以设置的桌面项目。因此,可能的新用户可以在几秒钟内看到他们是否喜欢它,而无需设置。

那该多酷啊!

根据我的阅读,GHCJS 将 STG 编译​​成 JavaScript。它说它使用 GHC API,所以我们也应该能够将它编译成 JavaScript,就像任何其他 Haskell 库一样。(对吗?)虽然 GHC 运行时有很多 C,但编译器本身是纯 Haskell 是真的吗?

所以:

  1. GHCJS 可以自己编译成 JavaScript 吗?
  2. Haste 可以自己编译成 JavaScript 吗?
  3. 是否已完成其中任何一项?(这就是http://haste-lang.org/try/的工作原理吗?它似乎需要一个网络。)
0 投票
1 回答
84 浏览

javascript - 如何用急速移除属性

模块Haste.DOM包含setAttr设置 HTML 元素属性的功能:

它工作正常,但我怎样才能删除属性?例如,我有一个带有属性的按钮,disabled我想让它启用。我尝试:

但它只是这样做:

我知道我必须删除此属性,但模块Haste.DOM不包含功能removeAttr......那我该怎么办?

0 投票
1 回答
810 浏览

haskell - 通过 Nix 安装 Haskell 包

具体来说,我正在尝试通过nix.

我可以在 中看到一个hasteCompiler条目nixpkgs/pkgs/top-level/haskell-packages.nix,并在其中看到相应的.nix文件,nixpkgs/pkgs/development/libraries/haskell/haste-compiler/但我不确定如何安装它。具体来说,没有一个

做我想做的事,并且nix-env -qa不将包含子字符串的任何内容haste列为可用包。

有什么想法吗?

0 投票
1 回答
224 浏览

haskell - 不能用急速安装镜头

我正在尝试安装镜头包以与haskell一起使用。

我收到以下错误:

我认为沙盒“注意”具有误导性。沙盒是新的,base无论如何都不能存在于沙盒中。

什么决定了加速基地的版本?使用 cabal(对于 haskell)安装镜头效果很好:

编辑:

到目前为止,lens-family作为替代品效果很好。

0 投票
2 回答
92 浏览

haskell - 不同的服务器和客户端依赖关系匆忙

我正在构建一个小项目,我想在其中使用 Elasticsearch。但是,在haskell中似乎要用于 elasticsearch 的库的 Bloodhound 间接依赖于template-haskell -这不受 haste 支持。现在,我不需要从客户端调用弹性,所以我不需要匆忙中的猎犬,但我需要能够从相同的代码库中调用它,因为加速构建为使用相同的代码用于服务器和客户端。我想我可以以某种方式拥有单独的客户端和服务器端实现,但我真的很喜欢这种匆忙的方式。

我如何才能匆忙调用仅存在于服务器端的依赖项?