Hi, When I run my main function I get an error: The prompt does not wait for user input and thus my parser fails with an empty head. Is there a switch to not echo to the console? Is this the problem? It happens in both Hugs and GHC main :: IO () main = do putStr "sentence? " input <- getLine case input of "quit" -> putStr "bye.\n" _ -> do let res = get_result $ proof $ do_proof $ getInput input in if res == Nothing then putStr ("-> Nothing\n") else putStr ("-> " ++ (show $ unJust res) ++ "\n") main ---- Sample output: START> $ mmccg.exe sentence? Fail: Prelude.head: empty list <END