Question

I'm trying to start using acid-state for a project, but I'm running into trouble running the demos.

Running HelloWorld.hs from this example collection on my 64-bit box gives me the errors

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 }

The same thing happens with HelloWorldNoTH.hs as well. Neither error manifests on a 32-bit system. Any ideas what's going on here? Did I fail to install (or improperly install) some required component?

I'm running "The Glorious Glasgow Haskell Compilation System, version 7.4.1" on 64-bit Debian Wheezy (installed via the haskell-platform package), with Cabal 0.14.0. The machine itself is a 64-bit Core i3. The 32-bit machine (which ran the demo successfully) differs in no non-obvious way.

Was it helpful?

Solution

This has absolutely nothing to do with which architecture you're running on (sorry for jumping to conclusions).

Turns out that I had some misconfiguration, or possibly some conflicting cabal libraries installed. Clearing out my .ghc, followed by a re-install of the appropriate library did the trick. If you're on Debian or comparable:

rm -r ~/.ghc/*
cabal install acid-state
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top