--
On Thu, 31 Oct 2002 11:26:13
Brent Dax wrote:
>I can honestly say at this point that I'd rather give up <$iterator>
>than lose hyperops.
I was thinking the same thing not long ago. But now
that I think about it, is <operator> ever going to be
confused for <$File_Handle>? The vector operation cosy
up well to the concept of iteration anyway. Hell, if
were desperate (and I think we are) then why not just
double the brackets to <[op]> or [<op>]. Sure it's
ugly, but I prefer it to ^[op] any day of the week,
and it's not going to be ambiguous.
All that said, can anyone come up with a case to
confuse <op> with <$File_Handle>?
-Erik
And I consider relegating them to the << >>
>digraphs losing them, because I'm never going to be able to remember how
>to type them, and neither will anybody else.
>
>Let's look at this logically. Here's all the punctuation (non-\w)
>characters on my keyboard and what they do in Perl 6:
>
> TERM OPERATOR DOUBLE
>OPERATOR
>` backticks none none
>' string constants none** none
>" string constants none none
>
># comment comment comment
>
>$ scalar sigil none none
>@ array sigil none none
>% hash sigil modulo none
>
>& sub sigil junction and** logical and
>! logical not none (?) none
>^ complement junction xor** logical xor**
>| none junction or** logical or
>
>/ regex divide defined or (in
>5.9)
>* list flatten* multiply exponent
>- numify and negate subtraction
>postdecrement
>+ numify** addition
>postincrement
>~ stringify* concat** smart
>match
>
>= none assignment
>comparison
>\ get reference none none
>.. method call** method call** range constructor
>? force to bool* none** trinary operator
>
>, none list composer list composer
>; none statement end statement end
>(in parentheses) super-comma none
>: none super-comma package
>separator, trinary operator
>
>
>( ) expression grouping sub parameters yuck
>{ } hash composing hash subscripts yuck
> block composing block composing yuck
>[ ] array composing array subscripts yuck
>< > iterator syntax comparison ops shift-left, shift-right
>UNUSED: 5 8 9
>
>Items marked with a * are new, ** are changed. There are twenty-two
>'none's on that list, but none of them line up. (Isn't Perl great?!?)
>
>';;' is available (it doesn't mean anything in either term or operator
>context), but it's really ugly. The other possibilities I see there
>have the same problem.
>
>There are potentially some meaningless sequences, especially with
>sigils, but those'll look quite cluttered. Actually, one of the few
>good meaningless ones is ^[op] (with the square brackets). In term
>context it would normally mean "bitwise complement this array", and in
>operator context it would mean "add this array to an xor junction". If
>we lose xor junctions (which I'm not necessarily advocating, mind you),
>this sequence is pretty much open.
>
>Damn. Larry, I don't envy you your job. :^)
>
>--Brent Dax <[EMAIL PROTECTED]>
>@roles=map {"Parrot $_"} qw(embedding regexen Configure)
>
>Wire telegraph is a kind of a very, very long cat. You pull his tail in
>New York and his head is meowing in Los Angeles. And radio operates
>exactly the same way. The only difference is that there is no cat.
> --Albert Einstein (explaining radio)
>
>
____________________________________________________________
Get 25MB of email storage with Lycos Mail Plus!
Sign up today -- http://www.mail.lycos.com/brandPage.shtml?pageId=plus