[Haskell-cafe] Need some help figuring out how to use the repl with reflex using only stack

Michael Litchard litchard.michael at gmail.com
Tue Jul 24 18:04:38 UTC 2018


I've created a minimal example to show you what I've tried. Below is also a
truncated error log. Could someone help me figure out how to get ghci
working with this example?

https://github.com/mlitchard/reflex-todo

stack repl --stack-yaml=stack-ghc.yaml

Truncated error log

Error: -- While building custom Setup.hs for package jsaddle-dom-0.9.2.0
using:
/home/mlitchard/.stack/setup-exe-cache/x86_64-linux/Cabal-simple_mPHDZzAJ_1.24.2.0_ghc-8.0.2
--builddir=.stack-work/dist/x86_64-linux/Cabal-1.24.2.0 build
lib:jsaddle-dom --ghc-options " -ddump-hi -ddump-to-file" Process exited
with code: ExitFailure 1 Logs have been written to:
/home/mlitchard/projects/git/reflex-todo/.stack-work/logs/jsaddle-dom-0.9.2.0.log

Preprocessing library jsaddle-dom-0.9.2.0... [587 of 599] Compiling
JSDOM.Custom.XMLHttpRequest ( src/JSDOM/Custom/XMLHttpRequest.hs,
.stack-work/dist/x86_64-linux/Cabal-1.24.2.0/build/JSDOM/Custom/XMLHttpRequest.o
)
/home/mlitchard/projects/git/reflex-todo/.stack-work/downloaded/Vheiln5kqwE0/src/JSDOM/Custom/XMLHttpRequest.hs:39:46:
error: • Could not deduce (Control.Monad.Catch.MonadThrow
Language.Javascript.JSaddle.Types.JSM) arising from a use of ‘throwM’ from
the context: MonadDOM m bound by the type signature for: throwXHRError ::
MonadDOM m => Maybe XHRError -> m () at
src/JSDOM/Custom/XMLHttpRequest.hs:38:1-53 • In the second argument of
‘(.)’, namely ‘throwM’ In the second argument of ‘maybe’, namely ‘(liftDOM
. throwM)’ In the expression: maybe (return ()) (liftDOM . throwM)
/home/mlitchard/projects/git/reflex-todo/.stack-work/downloaded/Vheiln5kqwE0/src/JSDOM/Custom/XMLHttpRequest.hs:42:20:
error: • No instance for (Control.Monad.Catch.MonadMask
Language.Javascript.JSaddle.Types.JSM) arising from a use of ‘bracket’ • In
the first argument of ‘(.)’, namely ‘bracket aquire id’ In the expression:
bracket aquire id . const In an equation for ‘withEvent’: withEvent aquire
= bracket aquire id . const
/home/mlitchard/projects/git/reflex-todo/.stack-work/downloaded/Vheiln5kqwE0/src/JSDOM/Custom/XMLHttpRequest.hs:45:31:
error: • Could not deduce (Control.Monad.Catch.MonadCatch
Language.Javascript.JSaddle.Types.JSM) arising from an operator section
from the context: MonadDOM m bound by the type signature for: send' ::
MonadDOM m => XMLHttpRequest -> Maybe JSVal -> m () at
src/JSDOM/Custom/XMLHttpRequest.hs:44:1-62 • In the expression:
(`onException` abort self) In the second argument of ‘($)’, namely
‘(`onException` abort self) $ do { result <- liftIO newEmptyMVar; r <-
withEvent (onAsync self Generated.error . liftIO $ putMVar result (Just
XHRError)) $ withEvent (onAsync self abortEvent . liftIO $ putMVar result
(Just XHRAborted)) $ withEvent (onAsync self load . liftIO $ putMVar result
Nothing) $ do { void $ case mbVal of { Nothing -> ... Just val -> ... };
liftIO $ takeMVar result }; throwXHRError r }’ In the expression: liftDOM $
(`onException` abort self) $ do { result <- liftIO newEmptyMVar; r <-
withEvent (onAsync self Generated.error . liftIO $ putMVar result (Just
XHRError)) $ withEvent (onAsync self abortEvent . liftIO $ putMVar result
(Just XHRAborted)) $ withEvent (onAsync self load . liftIO $ putMVar result
Nothing) $ do { void $ case mbVal of { Nothing -> ... Just val -> ... };
liftIO $ takeMVar result }; throwXHRError r }
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20180724/f0d73ed2/attachment.html>


More information about the Haskell-Cafe mailing list