On 27 October 2004 02:03, John Goerzen wrote:

> On 2004-10-26, Peter Simons <[EMAIL PROTECTED]> wrote:
>> By the way: It's good to know I'm not the only one wrestling
>> with Haskell's concurrency code. :-)
> 
> Yes.  Its POSIX interface is, uhm, weird.  I can't quite put my finger
> on it, but things like setting up a pipe to a child process's stdin
> just seem brittle and fragile with all sorts of weird errors.  I can
> do this in my sleep in C, Perl, or Python but in Haskell I can barely
> make it work when I'm fully conscious :-)

*laughs*

Is there anything concrete we can do?  The POSIX layer is supposed to be
pretty minimal, so in theory most POSIX idioms should not be harder in
Haskell, and hopefully should be easier.

We're open to suggestions, and even more open to code...

> Oh also, I would very much appreciate Haskell interfaces to realpath()
> and readlink().  And a system/rawSystem that returns the waitpid()
> exit status like system(3) does, not just the exit code.  (What
> happens if the process died because of a signal?)

system(3) is one of the things missing from the current System.Posix
API.  To see what else we consider to be missing, take a look at the
comment in the System.Posix source:

http://cvs.haskell.org/cgi-bin/cvsweb.cgi/~checkout~/fptools/libraries/u
nix/System/Posix.hs?rev=1.11;content-type=text%2Fplain

Since realpath() isn't POSIX, it would have to go into
System.Posix.Exts.

Cheers,
        Simon

_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to