module IOUtil(getEnvi, progName, progArgs) where
-- Some utilities that are a little dirty, but not very.
import IO(try)
import System(getEnv,getProgName,getArgs)
import System.IO.Unsafe(unsafePerformIO)
getEnvi :: String -> Maybe String
getEnvi s = either (const Nothing) Just $ unsafePerformIO $ try (getEnv s)
progName :: String
progName = unsafePerformIO getProgName
progArgs :: [String]
progArgs = unsafePerformIO getArgs