on master help sign in
Unified printing of special LTerms.
commitbc79ee87a147a773ff2d60923e0e9a2c2bf2fa42 authorMatus Tejiscak <ziman@functor.sk> dateMon 24 Feb 2014, 15:13 (13 years ago) parentb5c7a14
2 files changed+12−4
src/IRTS/Lang.hs+3−3 test/basic007/test033.idr+9−1
src/IRTS/Lang.hs+3−3
@@ -220,8 +220,8 @@ instance Show LExp where
220220 showSep ", " (map (show' env) args) ++")"
221221 show' env (LApp _ e args) = show' env e ++ "(" ++
222222 showSep ", " (map (show' env) args) ++")"
223− show' env (LLazyExp e) = "%lazy(" ++ show' env e ++ ")"
224− show' env (LForce e) = "%force(" ++ show' env e ++ ")"
223+ show' env (LLazyExp e) = "lazy{ " ++ show' env e ++ " }"
224+ show' env (LForce e) = "force{ " ++ show' env e ++ " }"
225225 show' env (LLet n v e) = "let " ++ show n ++ " = " ++ show' env v ++ " in " ++
226226 show' (env ++ [show n]) e
227227 show' env (LLam args e) = "\\ " ++ showSep "," (map show args) ++ " => " ++
@@ -232,7 +232,7 @@ instance Show LExp where
232232 showSep "\n\t| " (map (showAlt env) alts)
233233 show' env (LConst c) = show c
234234 show' env (LForeign lang ty n args) = concat
235− [ "foreign { "
235+ [ "foreign{ "
236236 , n ++ "("
237237 , showSep ", " (map (\(ty,x) -> show' env x ++ " : " ++ show ty) args)
238238 , ") : "
test/basic007/test033.idr+9−1
@@ -1,4 +1,12 @@
11module Main
22
3+%flag C "-ggdb3 -O0 -Q"
4+
5+isn : String -> IO Int
6+isn s = mkForeign (FFun "isNull" [FString] FInt ) s
7+
8+prn : String -> IO ()
9+prn s = mkForeign (FFun "putStr" [FString] FUnit) s
10+
311main : IO ()
4−main = nullPtr null >>= (putStrLn . show)
12+main = isn "\n" >>= print