【问题标题】:runtime type checking with haskell / cabal / stack使用 haskell / cabal / stack 进行运行时类型检查
【发布时间】:2017-01-04 16:55:21
【问题描述】:

在 Haskell 项目中,我使用了一个我知道包含类型错误的依赖项。但这实际上很好,因为我从不调用此代码。

所以我想启用defer-type-errors,但仅适用于该依赖包

有没有办法将编译器指令的范围限定在某个地方(堆栈?阴谋集团?)

【问题讨论】:

  • 修复软件包不是更好的解决方案吗...?
  • 当然,但这就像说我们不需要 defer-type-errors
  • 实际上在这种情况下,本身没有类型错误。它可以用 ghc 很好地编译,但不幸的是 ghcjs 映射到其他一些原始类型
  • 如果你真的需要你可以set ghc options per package in stack.yaml。我不确定它是否与 ghcjs 兼容。
  • @nicolas 我认为这与说我们不需要-fdefer-type-errors 不同:该标志可以在开发过程中成为有用的工具,而不会出现在生产系统中。

标签: haskell cabal haskell-stack


【解决方案1】:

如果实在有需要可以set ghc options per package in stack.yaml,即:

ghc-options:
    your_package_name: -fdefer-type-errors

我不确定它是否与 ghcjs 兼容。

但请务必让您的包裹的用户知道,也许在文档中以大粗体包含免责声明。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 2013-11-02
    • 2019-01-09
    • 2019-09-24
    • 2020-07-13
    • 2018-10-30
    相关资源
    最近更新 更多