module System.Environment(module System,module System.Environment) where import System(getArgs,getProgName,getEnv) import MonadicIO0(primGetEnvironment) getEnvironment :: IO [(String,String)] getEnvironment = map split `fmap` primGetEnvironment where split s = case break (=='=') s of (name,'=':val) -> (name,val) (name,_) -> (name,"") lookupEnv :: String -> IO (Maybe String) lookupEnv var = fmap Just (getEnv var) `catch` const (return Nothing)