diff options
| author | hallgren <hallgren@chalmers.se> | 2014-10-20 19:32:46 +0000 |
|---|---|---|
| committer | hallgren <hallgren@chalmers.se> | 2014-10-20 19:32:46 +0000 |
| commit | 8337a19b40301bfda5dd74c6d975072f168538de (patch) | |
| tree | 21c331f3afeea9f701b39fa3642f04698f7eeabc /src/compiler/GF/CompileInParallel.hs | |
| parent | 55aebadd5a64eb3f6a566168bbeeeb7cbb4ccb44 (diff) | |
type IOE a = IO a
IOE used to be a monad with extra error handling built on top of the IO monad,
But the IO monad already supports error handling, so this construction was a
superfluous.
The new 'instance ErrorMonad IOE' is defined to preserve the previous error
handling behaviour, i.e. the function 'handle' only catches errors thrown with
'raise' (or 'fail') and not other errors in the IO monad.
Diffstat (limited to 'src/compiler/GF/CompileInParallel.hs')
| -rw-r--r-- | src/compiler/GF/CompileInParallel.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/compiler/GF/CompileInParallel.hs b/src/compiler/GF/CompileInParallel.hs index b0a69019e..52aab40f6 100644 --- a/src/compiler/GF/CompileInParallel.hs +++ b/src/compiler/GF/CompileInParallel.hs @@ -79,7 +79,7 @@ batchCompile1 lib_dir (opts,filepaths) = deps <- newMVar M.empty toLog <- newLog runIOE let --logStrLn = toLog . ePutStrLn - ok :: CollectOutput IOE a -> IO a + --ok :: CollectOutput IO a -> IO a ok (CO m) = err bad good =<< appIOE m where good (o,r) = do toLog o; return r |
