Portability | portable |
---|---|
Stability | provisional |
Maintainer | libraries@haskell.org |
Miscellaneous information about the system environment.
Documentation
Computation getArgs
returns a list of the program's command
line arguments (not including the program name).
getProgName :: IO StringSource
Computation getProgName
returns the name of the program as it was
invoked.
However, this is hard-to-impossible to implement on some non-Unix
OSes, so instead, for maximum portability, we just return the leafname
of the program as invoked. Even then there are some differences
between platforms: on Windows, for example, a program invoked as foo
is probably really FOO.EXE
, and that is what getProgName
will return.
getEnv :: String -> IO StringSource
Computation getEnv
var
returns the value
of the environment variable var
.
This computation may fail with:
-
System.IO.Error.isDoesNotExistError
if the environment variable does not exist.
withProgName :: String -> IO a -> IO aSource
withProgName
name act
- while executing action act
,
have getProgName
return name
.
getEnvironment :: IO [(String, String)]Source
getEnvironment
retrieves the entire environment as a
list of (key,value)
pairs.
If an environment entry does not contain an '='
character,
the key
is the whole entry and the value
is the empty string.