CurryProg "System" ["Prelude","Global"] [] [CFunc ("System","environ") 0 Private (CTCons ("Global","Global") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","String") []]]]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Global","global")) (CSymbol ("Prelude","[]"))) (CSymbol ("Global","Temporary")))] []]), CFunc ("System","exitWith") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTVar (0,"_")])) (CRules CFlex [CRule [CPVar (0,"exitcode")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("System","prim_exitWith"))) (CVar (0,"exitcode")))] []]), CFunc ("System","getArgs") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]) (CExternal "getArgs"), CFunc ("System","getCPUTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getCPUTime"), CFunc ("System","getElapsedTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getElapsedTime"), CFunc ("System","getEnviron") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"evar")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("System","prim_getEnviron"))) (CVar (0,"evar")))) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude","lookup")) (CVar (0,"evar"))) (CVar (1,"envs"))))])] []]), CFunc ("System","getHostname") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []]) (CExternal "getHostname"), CFunc ("System","getPID") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getPID"), CFunc ("System","getProgName") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []]) (CExternal "getProgName"), CFunc ("System","prim_exitWith") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTVar (0,"_")])) (CExternal "prim_exitWith"), CFunc ("System","prim_getEnviron") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CExternal "prim_getEnviron"), CFunc ("System","prim_sleep") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_sleep"), CFunc ("System","prim_system") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CExternal "prim_system"), CFunc ("System","setEnviron") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"evar"),CPVar (1,"val")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Global","writeGlobal")) (CSymbol ("System","environ"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"evar"))) (CVar (1,"val")))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (3,"x0"))) (CVar (0,"evar"))))) (CSymbol ("Prelude","fst")))) (CVar (2,"envs")))))])] []]), CFunc ("System","sleep") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("System","prim_sleep"))) (CVar (0,"n")))] []]), CFunc ("System","system") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"cmd")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("System","prim_system"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("System","set"))) (CVar (1,"envs")))) (CVar (0,"cmd"))))])] [CLocalFunc (CFunc ("System","set") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (1,"var"),CPVar (2,"val")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"var"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"val"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ';'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))] []]))]]), CFunc ("System","unsetEnviron") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"evar")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Global","writeGlobal")) (CSymbol ("System","environ"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (2,"x0"))) (CVar (0,"evar"))))) (CSymbol ("Prelude","fst")))) (CVar (1,"envs"))))])] []])] []