r27635 - docs/Perl6/Spec
Author: lwall Date: 2009-07-21 03:03:38 +0200 (Tue, 21 Jul 2009) New Revision: 27635 Modified: docs/Perl6/Spec/S03-operators.pod Log: [S03] rename 'nonchaining infix' to 'structural infix' Modified: docs/Perl6/Spec/S03-operators.pod === --- docs/Perl6/Spec/S03-operators.pod 2009-07-20 23:56:21 UTC (rev 27634) +++ docs/Perl6/Spec/S03-operators.pod 2009-07-21 01:03:38 UTC (rev 27635) @@ -42,7 +42,7 @@ X Junctive and also X Junctive or | ^ L Named unary sleep abs sin temp let -N Nonchaining infix but does = leg cmp .. ..^ ^.. ^..^ +N Structural infix but does = leg cmp .. ..^ ^.. ^..^ C Chaining infix!= == = = eq ne lt le gt ge ~~ === eqv !eqv X Tight and X Tight or || ^^ // min max
Re: r27635 - docs/Perl6/Spec
On Mon, Jul 20, 2009 at 6:03 PM, pugs-comm...@feather.perl6.nl wrote: Author: lwall Date: 2009-07-21 03:03:38 +0200 (Tue, 21 Jul 2009) New Revision: 27635 Modified: docs/Perl6/Spec/S03-operators.pod Log: [S03] rename 'nonchaining infix' to 'structural infix' Modified: docs/Perl6/Spec/S03-operators.pod === --- docs/Perl6/Spec/S03-operators.pod 2009-07-20 23:56:21 UTC (rev 27634) +++ docs/Perl6/Spec/S03-operators.pod 2009-07-21 01:03:38 UTC (rev 27635) @@ -42,7 +42,7 @@ X Junctive and also X Junctive or | ^ L Named unary sleep abs sin temp let - N Nonchaining infix but does = leg cmp .. ..^ ^.. ^..^ + N Structural infix but does = leg cmp .. ..^ ^.. ^..^ C Chaining infix != == = = eq ne lt le gt ge ~~ === eqv !eqv X Tight and X Tight or || ^^ // min max Hmm... maybe Chaining infix should become Comparison? -- Jonathan Dataweaver Lang
Re: r27635 - docs/Perl6/Spec
Jon Lang wrote: On Mon, Jul 20, 2009 at 6:03 PM, pugs-comm...@feather.perl6.nl wrote: Modified: docs/Perl6/Spec/S03-operators.pod === --- docs/Perl6/Spec/S03-operators.pod 2009-07-20 23:56:21 UTC (rev 27634) +++ docs/Perl6/Spec/S03-operators.pod 2009-07-21 01:03:38 UTC (rev 27635) @@ -42,7 +42,7 @@ X Junctive and also X Junctive or | ^ L Named unary sleep abs sin temp let -N Nonchaining infix but does = leg cmp .. ..^ ^.. ^..^ +N Structural infix but does = leg cmp .. ..^ ^.. ^..^ C Chaining infix!= == = = eq ne lt le gt ge ~~ === eqv !eqv X Tight and X Tight or || ^^ // min max Hmm... maybe Chaining infix should become Comparison? I second that notion, ... assuming that the category would not later be expanded with other operators that don't fit the Comparison description. And please don't even consider instead using the term Relational in reference to these operators, that some people do. The Comparison term is more descriptive, and it doesn't conflict with other meanings of relational that relational databases deal with. -- Darren Duncan
Re: r27635 - docs/Perl6/Spec
On Mon, Jul 20, 2009 at 7:15 PM, Darren Duncandar...@darrenduncan.net wrote: Jon Lang wrote: On Mon, Jul 20, 2009 at 6:03 PM, pugs-comm...@feather.perl6.nl wrote: Modified: docs/Perl6/Spec/S03-operators.pod === --- docs/Perl6/Spec/S03-operators.pod 2009-07-20 23:56:21 UTC (rev 27634) +++ docs/Perl6/Spec/S03-operators.pod 2009-07-21 01:03:38 UTC (rev 27635) @@ -42,7 +42,7 @@ X Junctive and also X Junctive or | ^ L Named unary sleep abs sin temp let - N Nonchaining infix but does = leg cmp .. ..^ ^.. ^..^ + N Structural infix but does = leg cmp .. ..^ ^.. ^..^ C Chaining infix != == = = eq ne lt le gt ge ~~ === eqv !eqv X Tight and X Tight or || ^^ // min max Hmm... maybe Chaining infix should become Comparison? I second that notion, ... assuming that the category would not later be expanded with other operators that don't fit the Comparison description. Tight or includes min and max; I see nothing wrong with the Comparison precedence level eventually picking up a handful of operators that aren't comparators, as long as so many of them are. And especially if the question being asked when creating a new operator is should this have the same precedence as the comparison operators? A stronger argument against it would be to find comparison operators that exist at other precedence levels. I don't think that there are any. (Well, besides =, leg, and cmp.) Indeed, I'll be surprised if there are any other precedence levels that are chaining - which is another key point: what kind of operator would be chaining, but _not_ some sort of comparison? And please don't even consider instead using the term Relational in reference to these operators, that some people do. The Comparison term is more descriptive, and it doesn't conflict with other meanings of relational that relational databases deal with. Seconded. :) -- Jonathan Dataweaver Lang
Re: r27635 - docs/Perl6/Spec
On Mon, Jul 20, 2009 at 07:33:23PM -0700, Jon Lang wrote: : A stronger argument against it would be to find comparison operators : that exist at other precedence levels. I don't think that there are : any. (Well, besides =, leg, and cmp.) I think people would find it quite odd if an operator named cmp can't be considered a comparison operator. : Indeed, I'll be surprised if there are any other precedence levels : that are chaining - which is another key point: what kind of operator : would be chaining, but _not_ some sort of comparison? Congratulations, with that argument you've completely persuaded me that Chaining is the most precise description of that precedence level, and we should leave it just the way it is now. The reason I renamed Nonchaining is not that I dislike the concept of chaining, but that all the *other* non-chaining precedence levels are also, er, non-chaining. :) Though the proximate cause was that it made for a stupid error message, which indicated that the old name wasn't sufficiently accurate: Can't reduce a nonchaining operator because it's diffy and not chaining It now reads: Can't reduce cmp because structural infix operators are diffy and not chaining In short, chaining is a good concept, but non-chaining is bad (and doubly bad when it means two different things). Larry