diff options
| author | hallgren <hallgren@chalmers.se> | 2014-08-13 22:16:18 +0000 |
|---|---|---|
| committer | hallgren <hallgren@chalmers.se> | 2014-08-13 22:16:18 +0000 |
| commit | cd5193b7e19e7ff5e49cdeafe149fdeec8e19fb0 (patch) | |
| tree | c006a3b453b8b290b09379cf5cb2777421558e70 /src/compiler/GF/Infra/SIO.hs | |
| parent | a06351b6250dd456299565f13eba6ed02dd2a07b (diff) | |
Fix warnings in 16 modules, mostly forward compatibility warnings from GHC 7.8
Diffstat (limited to 'src/compiler/GF/Infra/SIO.hs')
| -rw-r--r-- | src/compiler/GF/Infra/SIO.hs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/compiler/GF/Infra/SIO.hs b/src/compiler/GF/Infra/SIO.hs index ff2072987..39c3da489 100644 --- a/src/compiler/GF/Infra/SIO.hs +++ b/src/compiler/GF/Infra/SIO.hs @@ -19,10 +19,11 @@ module GF.Infra.SIO( restricted,restrictedSystem ) where import Prelude hiding (putStrLn,print) -import Control.Monad(liftM) +import Control.Applicative(Applicative(..)) +import Control.Monad(liftM,ap) import System.IO(hPutStrLn,hFlush,stdout) import GF.System.Catch(try) -import System.Cmd(system) +import System.Process(system) import System.Environment(getEnv) import Control.Concurrent.Chan(newChan,writeChan,getChanContents) import qualified System.CPUTime as IO(getCPUTime) @@ -39,6 +40,10 @@ newtype SIO a = SIO {unS::PutStrLn->IO a} instance Functor SIO where fmap = liftM +instance Applicative SIO where + pure = return + (<*>) = ap + instance Monad SIO where return x = SIO (const (return x)) SIO m1 >>= xm2 = SIO $ \ h -> m1 h >>= \ x -> unS (xm2 x) h |
