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

Reply via email to