Proposal: Add getFullProgName
nominolo at googlemail.com
Wed Jun 13 02:59:50 CEST 2012
I don't think this is guaranteed to work. See top answer here 
(which cites the standard). Also, note that the man page for exec and
friends notes that the first argument *by convention* is the name of
I'm not against exposing a function to return argv (I thought
getProgName did that), but the documentation should make clear that it
is not guaranteed to work.
On 13 June 2012 00:57, Johan Tibell <johan.tibell at gmail.com> wrote:
> 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.
> 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
> Libraries mailing list
> Libraries at haskell.org
Push the envelope. Watch it bend.
More information about the Libraries