问题标签 [hackage]

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 回答
91 浏览

haskell - 如何将 dev 分支安装到 Cabal 沙箱中

我在 Cabal 沙箱中有一个项目。我想使用一个包,但 Hackage 上的包不适合。作者在 Github 上有一个可以满足我需求的替代开发分支。我以前使用以下方法安装了没有沙箱的开发分支:

显然,如果我只想在沙箱中安装这个 repo,那是行不通的。

我的目录结构是这样设置的:

有一个可执行文件和一个库。我的 build-depends 有大约 18 个包依赖项,这是其中之一。所以我的问题:

  1. 一旦我下载了开发仓库,我应该把它解压到哪里?
  2. 提取后,如何构建/安装到我的沙箱中?
  3. 完成后,我是否需要修改我的 .cabal 文件?
0 投票
1 回答
186 浏览

haskell - hackage-server 无法构建 - 是否有特定的 ghc/cabal 版本要求?

我正在尝试构建和运行 Hackage 服务器https://github.com/haskell/hackage-server的副本。我按照这里的说明https://github.com/haskell/hackage-server/wiki以及自述文件中的说明。无论我尝试哪种方式,在尝试使用 ghc 7.8.4 和 cabal 1.22 构建时,都会收到以下错误:

我也尝试过使用最新的 Haskell 平台,我得到了同样的失败信息。

我正在尝试确定这是 hackage-server 当前主分支中的错误,还是与我安装 ghc 或 cabal 的方式有关。

编辑:我再次尝试使用 Ubuntu 14.04 repo haskell-platform(ghc 7.6.3,cabal 1.16)并且发生了同样的错误。

0 投票
1 回答
141 浏览

haskell - 无法安装haskell包http-enumerator

运行 cabal install 时得到以下 bash 脚本。

看起来它抱怨 http-enumerator 所需的许多软件包不可用。我不确定打印输出的最后一行中的“Backjump”是什么意思。

如何解决包依赖关系?

谢谢!

0 投票
2 回答
49 浏览

haskell - 安装 Hackage 字符串转换失败

问题

我正在安装 Hackage string-conversions。但是,它失败并出现以下错误。

错误日志

环境

Ubuntu GNOME:14.10

ghc:7.6.3

阴谋集团:1.20.0.2

0 投票
1 回答
122 浏览

haskell - 我怎么知道应该为黑客攻击的不一致负责

尝试安装criterion时,我遇到了我依赖想要重新安装的其他软件包的麻烦。重新安装它们会破坏一切(我已经尝试过)。

现在,我如何确定是否应该criterion为此(使用太旧的依赖项)或其他包(因为更新不足)负责?

0 投票
2 回答
413 浏览

haskell - Haskell:hackage Control.Applicative 文章中应用函子定律的描述中的缺陷?:它说 Applicative 决定 Functor

我想我在hackage 文章中Control.Applicative发现了一个缺陷。作为对应用函子定律的描述,它说:

一个带有应用程序的函子,提供嵌入纯表达式 ( pure) 的操作,以及对计算进行排序并组合它们的结果 ( <*>)。

一个最小的完整定义必须包括满足以下定律的这些函数的实现:

身份

作品

同态

互换

(请注意,这并没有说明 fmap 的任何内容)并且它指出这些法律决定了Functor实例:

作为这些定律的结果,Functorf 的实例将满足

起初我认为这显然是错误的。也就是说,我猜肯定存在t满足以下两个条件的类型构造函数:

  1. tApplicative满足上述规则的一个实例,并且
  2. 有两种不同的实现instance (Functor t) (即有两个不同的函数fmap1, fmap2 :: (a->b) -> (t a->t b),满足函子定律)。

如果(且仅当)上述正确,则必须将上述语句重写为

f 的 Functor 实例必须满足

作为这些法律的结果,这符合Functor法律。

这显然是正确的,无论我的猜测是否正确

我的问题是我的猜测正确吗?有没有t符合要求的条件?


以下是我在尝试自己回答这个问题时的想法的解释。

如果我们只是对实际 Haskell 编程不感兴趣的数学家,我们可以很容易地肯定地回答这个问题。实际上,

满足上面的要求 1 和 2(事实上,几乎任何事情都可以)。事实上,是和Identity的一个简单的实例,如 中所定义。(这满足了。)要定义另一个“实现” ,为每种类型采取两个函数FunctorApplicativeData.Functor.Identityfmap f = (pure f <*>)instance (Functor f)a

这样

(从理论上讲,这很容易)。现在定义

这符合Functor法律,如果有

这样

但是我们是否可以在 Haskell 中做到这一点并不明显。是这样的:

在 Haskell 中可能吗?


编辑

我忘了写一些很重要的东西。我认为Control.Applicative它是 GHC 基础包的一部分,所以我也对我的问题的答案是否会随着我还不理解的任何 GHC 语言扩展(例如FlexibleInstancesor )而改变感兴趣。OverlappingInstances

0 投票
1 回答
82 浏览

haskell - 使用函数 X 查找最早的包版本

所以我坐在这里想知道为什么我找不到我正在寻找的功能,事实证明它在我安装的软件包版本中不存在。

那么如何让 Hackage 告诉我该功能是在哪个版本中添加的呢?

(特别是,我可以在我的 Cabal 描述中指定正确的包边界。)

0 投票
1 回答
52 浏览

haskell - hackage 显示带有可执行部分的库包的不正确依赖项

Hackage 显示了 Library 部分以及所有 Executable 部分的依赖关系的联合,即使我有条件地将它们隐藏在设置为false.

我只发现了这个古老的,据称已修复的错误,它声称指定cabal >= 1.18可以解决问题,但似乎并非如此。

当包包含可执行部分时,我需要做什么才能让 hackage 仅显示库部分的依赖项?

是给我带来问题的包。

0 投票
1 回答
75 浏览

haskell - 如何判断 haskell 源代码是否有 Bang

是否有任何库函数可以告诉给定的 .hs 文件是否使用严格注释?还是我必须进入语法树?

0 投票
1 回答
82 浏览

haskell - Yesod 类型文本上的正则表达式

目前,我正在将我的 Text 更改为 String,然后使用 Text.Regex.Posix 进行匹配。在 Yesod 中是否有一种惯用且有效的方法来执行正则表达式?