@@ -85,27 +85,27 @@ repl orig mods
8585ideslave :: IState -> [FilePath] -> Idris ()
8686ideslave orig mods
8787 = do idrisCatch
88− (do x <- liftIO $ receiveMessage
89− case x of
90− (List [(SymbolAtom "idris"), cmd, (IntegerAtom id)]) ->
91− case sexpToCommand cmd of
92− Just (Interpret cmd) ->
93− do i <- getIState
94− let fn = case mods of
95− (f:_) -> f
96− _ -> ""
97− case parseCmd i cmd of
98− Left err -> do liftIO $ sendMessage id (Left (show err))
99− Right cmd -> do idrisCatch (do xs <- process fn cmd
100− liftIO $ sendMessage id (Right (xs, "no output")))
101− (\e -> do liftIO $ sendMessage id (Left (show e)))
102− Just (REPLCompletions str) -> do (unused, compls) <- replCompletion (reverse str, "")
103− liftIO $ sendMessage id (Right (map replacement compls, reverse unused))
104− Just (LoadFile filename) -> do clearErr
105− mod <- loadModule filename
106− liftIO $ sendMessage id (Right (SymbolAtom ":good"))
107− Nothing -> do liftIO $ sendMessage id (Left "did not understand"))
108− (\e -> do liftIO $ sendMessage 0 (Left (show e)))
88+ (do sexp <- receiveMessage
89+ case sexpToCommand sexp of
90+ Just (Interpret cmd) ->
91+ do i <- getIState
92+ let fn = case mods of
93+ (f:_) -> f
94+ _ -> ""
95+ case parseCmd i cmd of
96+ Left err -> do sendMessage (Left (show err))
97+ Right cmd -> do idrisCatch
98+ (do xs <- process fn cmd
99+ sendMessage (Right (xs, "no output")))
100+ (\e -> do sendMessage (Left (show e)))
101+ Just (REPLCompletions str) ->
102+ do (unused, compls) <- replCompletion (reverse str, "")
103+ sendMessage (Right (map replacement compls, reverse unused))
104+ Just (LoadFile filename) -> do clearErr
105+ mod <- loadModule filename
106+ sendMessage (Right (SymbolAtom "good"))
107+ Nothing -> do sendMessage (Left "did not understand"))
108+ (\e -> do sendMessage (Left (show e)))
109109 ideslave orig mods
110110
111111-- | The prompt consists of the currently loaded modules, or "Idris" if there are none