[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