tomgr / libcspm

The library FDR3 uses for parsing, type checking and evaluating machine CSP.
https://www.cs.ox.ac.uk/projects/fdr/
Other
30 stars 6 forks source link

Fix cspmcheckeri dependencies. #2

Closed PhilArmstrong closed 11 years ago

PhilArmstrong commented 11 years ago

Just trying out your csp checker & discovered that it won't build on Debian testing with the system libraries: had to install the latest haskeline by hand.

tomgr commented 11 years ago

Thanks! Just to clarify: is that because it fails to build with 0.6 and actually requires 0.7?

PhilArmstrong commented 11 years ago

That appears to be the case. It's possible that some 0.6 point release fixed the problem of course, I didn't bother bisecting the haskeline releases.

PhilArmstrong commented 11 years ago

The error with 0.6.4.7 was

$ cabal build
Building cspmchecker-0.2.1...
Preprocessing executable 'cspmcheckeri' for cspmchecker-0.2.1...
[2 of 2] Compiling Main             ( src/InteractiveChecker/Main.hs, dist/build/cspmcheckeri/cspmcheckeri-tmp/Main.o )

src/InteractiveChecker/Main.hs:51:44:
    No instance for (MonadException IChecker)
      arising from a use of `getInputLine'
    Possible fix:
      add an instance declaration for (MonadException IChecker)
    In the second argument of `handleSourceError', namely
      `(getInputLine (prompt ++ "> "))'
    In a stmt of a 'do' block:
      minput <- handleSourceError
                  (Just "") (getInputLine (prompt ++ "> "))
    In the expression:
      do { currentPath <- lift $ getState currentFilePath;
           let prompt = ...;
           minput <- handleSourceError
                       (Just "") (getInputLine (prompt ++ "> "));
           case minput of {
             Nothing -> return ()
             Just input -> do { ... } } }
tomgr commented 11 years ago

Thanks; that looks entirely plausible!