[phobos] Removing std.stdio.File.popen()
Steve Schveighoffer
schveiguy at yahoo.com
Mon Aug 16 08:46:38 PDT 2010
Well, like I said, I wrote code that compiled. I haven't been able to test it
because of the "circular dependency" problem artifically introduced by the
workaround for 3979 :)
I think it's correct, Walter sent me enough snipits from DMC's runtime internals
so I could do it. Only testing will tell....
BTW, are you in a position to test Rainer's patch on bug 3979? I don't have
time right now to build/test a compiler patch (not to mention, I've never built
dmd before).
-Steve
----- Original Message ----
> From: Lars Tandle Kyllingstad <lars at kyllingen.net>
> To: Discuss the phobos library for D <phobos at puremagic.com>
> Sent: Mon, August 16, 2010 11:29:50 AM
> Subject: Re: [phobos] Removing std.stdio.File.popen()
>
> Does that mean you figured out the whole FILE* <--> HANDLE thing? If
> so, that's awesome!
>
> -Lars
>
>
>
> On Mon, 2010-08-16 at 07:28 -0700, Steve Schveighoffer wrote:
> > I have a fully compiling Windows version ready to test, but issue 3979
> > blocks that. I didn't have the patience that Lars had to build it
> > outside of phobos, so I just put it on hold for now :) But yes,
> > everything that std.process supports will be doable on both phobos and
> > Windows with a common interface. There will be one minor difference
> > -- Windows has a GUI flag that prevents a console window from
> > appearing. This is important to people who are running programs they
> > don't want to pop up temporary console windows.
> >
> > This flag simply won't be defined in POSIX.
> >
> > -Steve
> >
> >
> >
> > From: David Simcha <dsimcha at gmail.com>
> > To: Discuss the phobos library for D <phobos at puremagic.com>
> > Sent: Mon, August 16, 2010 10:11:40 AM
> > Subject: Re: [phobos] Removing std.stdio.File.popen()
> >
> > This looks terrific. I've always found the old std.process to
> > be way underpowered, especially on Windows. Does your
> > statement about cross-platformness imply that Windows will
> > eventually be supported, too?
> >
> > On Mon, Aug 16, 2010 at 9:20 AM, Lars Tandle Kyllingstad
> > <lars at kyllingen.net> wrote:
> > On Mon, 2010-08-16 at 09:04 -0400, Adam Ruppe wrote:
> > > I actually use it (which is why I duplicated your
> > bug), but am OK with
> > > removing it, since it is easy enough to get at
> > anyway. For a while, I
> > > did a separate extern(C) for pclose anyway!
> > >
> > > However, I don't think something being POSIX only is
> > a good reason to
> > > remove something. D should take advantages of
> > whatever platform it is
> > > on. Portability is good when you can have it, but it
> > shouldn't be a
> > > function killer alone.
> >
> >
> > Two comments:
> >
> > 1. I disagree with you. :) I think that Phobos'
> > user-visible interface
> > should be completely platform agnostic. Code that
> > depends only on
> > Phobos should compile and run on any platform.
> >
> > 2. Steve and I have been working on a new version of
> > std.process, which
> > will at some point, hopefully, obviate the need for
> > popen(). See
> > pipeProcess() here:
> >
> > http://www.kyllingen.net/code/ltk/doc/process.html
> >
> > The POSIX implementation is more or less complete, but
> > its inclusion in
> > Phobos is currently being blocked by bug 3979. Also,
> > Steve has run into
> > some very tricky issues with pipes on Windows,
> > fundamentally caused by
> > D's dependence on the DMC runtime. I don't know how
> > (or if) that is
> > working out.
> >
> > -Lars
> >
> >
> > _______________________________________________
> > phobos mailing list
> > phobos at puremagic.com
> > http://lists.puremagic.com/mailman/listinfo/phobos
> >
> >
> >
> >
> > _______________________________________________
> > phobos mailing list
> > phobos at puremagic.com
> > http://lists.puremagic.com/mailman/listinfo/phobos
>
>
> _______________________________________________
> phobos mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos
>
More information about the phobos
mailing list