Proposal: Add getFullProgName

Johan Tibell johan.tibell at
Wed Jun 13 01:57:00 CEST 2012


getProgName is only useful in case you want to print the program name
to the screen. You cannot actually use it to do anything interesting
programmatically (like execv:ing the program.) I suggest we add
getFullProgName which does the sensible thing of returning argv[0].
Here's an implementation:

getFullProgName :: IO String
getFullProgName =
    alloca $ \ p_argc ->
    alloca $ \ p_argv -> do
        getFullProgArgv p_argc p_argv
        peek p_argv >>= peek >>= peekCString

foreign import ccall unsafe "getFullProgArgv"
    getFullProgArgv :: Ptr CInt -> Ptr (Ptr CString) -> IO ()

Discussion deadline: 2 weeks

-- Johan

More information about the Libraries mailing list