On Mon, Nov 21, 2005 at 12:08:08PM -0800, Larry Wall wrote: > On Mon, Nov 21, 2005 at 07:57:59PM +0100, Ruud H.G. van Tol wrote: > : There is a "[[:alpha:][:digit:]" and a "[[:alpha:][:digit]]" on the > : A5-page. > > Hmm, well, thanks--I went to fix it and I see Patrick beat me to > the fix. But in one of the updates, it says: > > +[Update: Actually, that's now written C<< <+alpha+digit> >>, avoiding > +the mistaken impression entirely.]
I went ahead and added the update while fixing the typos. :-) > And it occurs to me that we could probably allow <alpha+digit> there > since there's no ambiguity what <alpha means, and we're already claiming > the next character after the opening word to decide how to process the > rest of the text inside angles. Even if someone writes > > <alpha + digit> > > that would fail under the current policy of treating "+ digit" as rule, > since you can't start a rule with +. Somehow I prefer the explicit leading + or -, so that we *know* this is a rule composition of some sort. It also fits in well with the convention that the first character after the '<' lets you know what kind of assertion is being created. > Unfortunately, though, > > <identchar - digit> > > would be ambiguous, and/or wrong. Could allow whitespace there if we > picked an explicit "this is rule" character. Did we remove "this is > string"? I didn't recall seeing anything that removed "this is string", so it's currently implemented in PGE. It's kind of a nice shortcut: <bracketed: []()> but it would be no real problem to eliminate it and go strictly with: <bracketed('[]()')> "This is rule" is currently whitespace, whatever follows is taken to be a pattern. But let me know what you decide so I can make the appropriate changes. :-) Pm