On Sat, Nov 27, 2004 at 11:20:28AM -0600, [EMAIL PROTECTED] wrote:
> On Sat, Nov 27, 2004 at 10:55:39AM -0600, Andy Lester wrote:
> > On Sat, Nov 27, 2004 at 03:36:48PM -0000, Steve Peters via RT ([EMAIL 
> > PROTECTED]) wrote:
> > > +Some operating systems may allow a C<IO::File::new> or C<IO::File::open> 
> > > +to be performed on a directory without errors.  This behavior is not
> > > +portable and not suggested for use.  Instead, C<opendir> and C<readdir> 
> > > or
> > > +C<DirHandle> suggested instead.
> > 
> > Let's ditch the passive voice and be more definitive.
> > 
> > Some operatings systems may perform a C<IO::File::new> or
> > C<IO::File::open> without errors.  This behavior returns raw information
> > about the directory, and is not portable.  Instead, use C<opendir> and
> > C<readdir> or the C<DirHandle> module.
> > 
> > Thanks for digging this up again.
> > 
> > xoa
> >
> 
> Better still, let's mention directories earlier...
> 
> Some operatings systems may perform a C<IO::File::new> or
> C<IO::File::open> on directories without errors.  This behavior returns raw
> information about the directory, and is not portable.  Instead, use
>  C<opendir> and C<readdir> or the C<DirHandle> module.

But that's not correct; I thought some allowed opening directories but
always return eof.  The vague "not portable" is much better than
making promises about what will be returned if the open succeeds.  And
I'd keep it in the family by recommending IO::Dir rather than
DirHandle.  (DirHandle doesn't provides seek and tell; IO::Dir does,
as well as the weird tie interface that I can't imagine ever using.)

Reply via email to