On Sun, Nov 07, 2004 at 06:19:05PM -0600, Jonathan Scott Duff wrote:
: It eliminates the hackish division of circumfix operators by making
: each side explicit.  This is an improvement if you ask me.

More importantly, it avoids having to enumerate a list of characters
that have to be backslashed.  The previous rule said any bracket
character or semicolon or commo had to be backslashed:

    circumfix:\[\]

That was just too ugly to live.  The problem was NOT the declaration,
which could always be terminated by whitespace, but rvalue use
of &foo:[EMAIL PROTECTED]@#, which, as you can see even in English, has to be
smart enough to stop on comma, but not on # or @ or $.  It was just
getting way too mindreadish, so I've been looking at different ways
to quote that so that I'd only have to look for one thing at the end,
like in HTML where & only has to look for the final semicolon.
Only after deciding it'd be much better to reuse an existing Perl
quoting mechanism did it occur to me that ÂÂ also solves the
two-part problem of circumfix operators because it can do slices
based on whitespace.  So even though I knew people would carp about
Yet Another Use for ÂÂ, it was the right thing.

: The only use of ïï that really bothers me is as one of the secondary
: sigils
: 
:     $*foo     # a truly global global (in every package)
:     $^foo     # an autodeclared parameter variable
:     $.foo     # a public attribute
:     $:foo     # a private attribute
:     $?foo     # a compiler variable
:     $=foo     # a POD variable
:     $ïfooï        # a rule-scoped variable
: 
: That last one just doesn't fit with the others.  I'd prefer something
: like $~foo if I had a say.

Well, it was $?foo, but I stole that.

The problem is that rule-scoped variables aren't real variables.
They're really just elements in a hash, and get dereferenced as hash
elements.  $Âfoo is just syntactic sugar for $0ÂfooÂ.  If it were
just that, it probably wouldn't be sufficient reason, but we also
needed a way to distinguish capturing rules from non-capturing, and
the <...>/Â... distinction works nicely there too.  I like it when the
contents of the visual "pill" are consistent from one place to another.

Larry

Reply via email to