@@ -1,5 +1,5 @@
1{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, DeriveFunctor,
1{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, DeriveFunctor,
2− PatternGuards, ScopedTypeVariables, CPP #-}
2+ PatternGuards, CPP #-}
4module Idris.REPL where
4module Idris.REPL where
@@ -111,11 +111,9 @@ startServer orig stvar fn_in = do tid <- runIO $ forkOS serverLoop
111 where serverLoop :: IO ()
111 where serverLoop :: IO ()
112 -- TODO: option for port number
112 -- TODO: option for port number
113 serverLoop = withSocketsDo $
113 serverLoop = withSocketsDo $
114− catch (do sock <- listenOn $ PortNumber 4294
114+ do sock <- listenOn $ PortNumber 4294
115− i <- readMVar stvar
115+ i <- readMVar stvar
116− loop i sock)
116+ loop i sock
117− (\(e :: IOException) -> return ()) -- silently fail
118− -- TODO: allow multiple instances somehow
120 fn = case fn_in of
118 fn = case fn_in of
121 (f:_) -> f
119 (f:_) -> f