@@ -26,6 +26,10 @@ step :: TT Name -> Idris (Maybe (TT Name))
2626step tm = step' (unApply tm)
2727 where step' (P _ (UN "unsafePerformIO") _, [_, arg] ) = step arg -- Only step if arg can be stepped
2828 step' (P _ (UN "mkForeign") _, args) = stepForeign args
29+ step' (P _ (UN "prim__IO") _, [_, arg]) = step arg
30+ step' (P _ (UN "prim__readString") _, [(P _ (UN "prim__stdin") _)]) =
31+ do line <- lift $ getLine
32+ return . Just . Constant . Str $ line
2933 step' _ = return Nothing
3034
3135-- | Perform side effects until no more can be performed, then return the