OK, by my count -- after editing to reflect Larry's notes -- only a few
issues remain before the ops list can be completed.
----
1) Need a definitive syntax for hypers,
^[op] and «op»
have been most seriously proposed -- something that keeps a
bracketed syntax, but solves ambiguity issues.
2) Possible inclusion of unary prefix ^, meaning "complement".
(Assuming doesn't conflict with (1))
3) Possible inclusion of "like"/"unlike" or similar as synonyms for ~~
!~. Which we don't have to decide now.
----
All other op issues, by my count, revolve around the meanings of
specific hyperop constructs. There is one, overriding question with
the hyperops, which is the precise relation between an op, an
assignment op, and their (three!) hyperop equivs:
A op B
A op= B
A ^[op] B
A ^[op=] B
A ^[op]= B
If we can formalize the precise relationship between the three hypers
in the presence of scalar and list (and hash?) values for A and B, I
believe we can answer nearly all the hyperop questions definitively.
For example:
@a ^[op] @b # array v array
$a ^[op] @b # scalar v array
@a ^[op] $b # array v scalar
$a ^[op] $b # scalar v scalar
@a ^[op=] @b # array v array
$a ^[op=] @b # scalar v array
@a ^[op=] $b # array v scalar
$a ^[op=] $b # scalar v scalar
@a ^[op]= @b # array v array
$a ^[op]= @b # scalar v array
@a ^[op]= $b # array v scalar
$a ^[op]= $b # scalar v scalar
Some of these are nonsensical, some of them aren't. So which are
which, and can someone demonstrate that the rule holds true for ALL
hyperoperators, as opposed to just MOST? ;-)
MikeL
- Perl6 Operator List (REMAINING ISSUES) Michael Lazzaro
- Perl6 Operator List (REMAINING ISSUES) fearcadi
- Perl6 Operator List (REMAINING ISSUES) fearcadi
- Re: Perl6 Operator List (REMAINING ISSUES) Peter Haworth
- Re: Perl6 Operator List (REMAINING ISSUES) Erik Steven Harrison