首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >酸状态示例错误

酸状态示例错误
EN

Stack Overflow用户
提问于 2012-11-04 03:45:26
回答 1查看 163关注 0票数 0

我正尝试在一个项目中使用acid-state,但在运行演示时遇到了问题。

在我的64位机器上从this example collection运行HelloWorld.hs会给出错误

代码语言:javascript
复制
acid-state.hs:26:7:
    No instance for (MonadState
                       HelloWorldState (Update HelloWorldState))
      arising from a use of `put'
    Possible fix:
      add an instance declaration for
      (MonadState HelloWorldState (Update HelloWorldState))
    In the expression: put (HelloWorldState newValue)
    In an equation for `writeState':
        writeState newValue = put (HelloWorldState newValue)

acid-state.hs:29:43:
    No instance for (MonadReader
                       HelloWorldState (Query HelloWorldState))
      arising from a use of `ask'
    Possible fix:
      add an instance declaration for
      (MonadReader HelloWorldState (Query HelloWorldState))
    In a stmt of a 'do' block: HelloWorldState string <- ask
    In the expression:
      do { HelloWorldState string <- ask;
           return string }
    In an equation for `queryState':
        queryState
          = do { HelloWorldState string <- ask;
                 return string }

同样的事情也发生在HelloWorldNoTH.hs上。这两个错误在32位系统上都不会出现。知道这是怎么回事吗?我是否未能安装(或安装不正确)某些必需的组件?

我在64位的Debian Wheezy (通过haskell-platform包安装)上运行"The Glorious Glasgow Haskell Compilation System, version 7.4.1“,带有Cabal 0.14.0。机器本身是一个64位核心i3。这台32位机器(它成功地运行了演示程序)没有明显的区别。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-06 22:50:03

这与您运行的是哪种架构完全无关(很抱歉草率下结论)。

结果是我安装了一些错误的配置,或者可能安装了一些冲突的cabal库。清空我的.ghc,然后重新安装适当的库就行了。如果你使用的是Debian或同类软件:

代码语言:javascript
复制
rm -r ~/.ghc/*
cabal install acid-state
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13212836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档