IOUtil

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