Without -yet- commenting on the File/OS/Filesystem issue, this bit of code is either substantially wrong or just a convenience wrapper around what's really going on:
On Wed, Jan 25, 2006 at 09:10:50PM +0000, Alberto Simões wrote: > $P0 = new .Path("/foo/bar") [...] > $P0.is_dir() > $P0.is_file() It is necessary that Parrot's filesystem interface make user-visible the _event_ of measuring the attributes of a path _or_ an already open filesystem object (e.g. calling stat() or fstat()). It must also represent the bundle of measurements returned as some kind of PMC. (handwave handwave) Perl 5 does this (fairly crudely) by returning a list of values from stat() or lstat() which you can examine at leisure, and by special-casing the "_" filehandle to mean "results of last stat". The above-quoted example is only plausible if it's shorthand for, e.g.: $P1 = $P0.stat # or lstat $P1.is_dir() $P1.is_file() -- Chip Salzenberg <[EMAIL PROTECTED]>