Mark Carroll wrote:
Your code looks great, but where do you find the library documentation, like what the arguments for executeFile are all about? (I'd guessed the Maybe thing was an environment, but what's the Bool?) I've been trying to do similar stuff, but have been stumbling in the dark rather.
Source code (hslibs/posix/PosixProcPrim.lhs): executeFile :: FilePath -- Command -> Bool -- Search PATH? -> [String] -- Arguments -> Maybe [(String, String)] -- Environment -> IO () executeFile path search args Nothing = do [snip] if search then throwErrnoIfMinus1_ "executeFile" (c_execvp s arr) else throwErrnoIfMinus1_ "executeFile" (c_execv s arr) executeFile path search args (Just env) = do [snip] if search then throwErrnoIfMinus1_ "executeFile" (c_execvpe s arg_arr env_arr) else throwErrnoIfMinus1_ "executeFile" (c_execve s arg_arr env_arr) IOW: search env function False Nothing execv True Nothing execvp False Just _ execve True Just _ execvpe [*] [*] execvpe() isn't a standard library function; it is implemented in hslibs/posix/cbits/execvpe.c using execve(). -- Glynn Clements <glynn.clements@virgin.net>