On Tue, Aug 18, 2009 at 09:24:08AM +0200, pugs-comm...@feather.perl6.nl wrote:
> +=head3 Default constraints > + > +The default p{} only allows "/" as separator and does not allow path > elements > +to contain > +characters that won't work on modern Windows and Unix like \ / ? % * : | " > > <, > +etc. The reason for this is that portable paths are the default. If > +platform/filesystem specific behavior is really needed it should be shown in > +the code by applying different sets of constraints (see below). Perl 5 runs on (at least) VMS and VOS too. So, if Perl 6 is to adopt a policy of enforced portable filenames by default, it should (at least) also exclude - as the first character, and forbid more than one . in a filename. (Also, I suspect, ; and . are illegal in directory names. And on VMS catfile() and catdir() *are* distinct operations, so it's important to know if the right-most argument is a file or a directory) Nicholas Clark