Bisected. First issue was resolved in https://github.com/rakudo/rakudo/commit/11f27a30bdf380c53697330ec62e982dde68e0b0
On 2017-10-01 23:59:39, alex.jakime...@gmail.com wrote: > 1. I think it is properly guarded now. (error message: Cannot coerce a > lazy > list onto a Bag) > 2. That's OK. A lot of things require whitespace in 6lang (another > example > here: > https://docs.6lang.org/language/traps#Less_than_vs._Word_quoting/Associative_indexing > ). If you insist on no whitespace you're free to use ⊎. > 3. Here's the current error message: “Only identical operators may be > list > associative; since '(+)' and '(-)' differ, they are non-associative > and you > need to clarify with parentheses”. I'm not sure if (+) and (-) should > work > without parens. > > I think we need a test for the first issue, second issue can be > rejected and > 3rd has to be separated into a separate RFC ticket. > > Therefore TESTNEEDED. Whoever writes a test can decide whether 3rd > issue should > be rejected or separated into another ticket :) > > On 2015-07-09 02:27:18, liu...@360.cn wrote: > > 15:20 < kanl> my $a = bag( -Inf .. Inf ); my $b = bag( 1 .. 3 ); my > > $c > > = bag(); > > say $a(+)$b(+)$c; ## this won't work > > 15:21 < kanl> 1. Inf is not properly guarded > > 15:21 < kanl> 2. the (whatever) operator requires leading > > whitespaces. > > 15:21 < kanl> 3. can't mix the operators without grouping () > > 15:23 < kanl> m: my $a = bag( 1 .. 4 ); my $b = bag( 1 .. 3 ); say > > $a(+)$b; > > 15:23 < kanl> m: my $a = bag( 1 .. 4 ); my $b = bag( 1 .. 3 ); my $c > > = > > bag(); > > say $a (+) $b (-) $c; > > 15:23 <+camelia> rakudo-moar 377672: OUTPUT«===SORRY!=== Error while > > compiling > > /tmp/hlD7eRLLzWPrefix + requires an argument, but no > > valid > > term foundat /tmp/hlD7eRLLzW:1------> .. 4 ); my > > $b = bag( > > 1 .. 3 ); say $a(+⏏)$b; expecting any of: > > prefix» > > 15:24 <+camelia> rakudo-moar 377672: OUTPUT«===SORRY!=== Error while > > compiling > > /tmp/YpB9DyyE64Operators '(+)' and '(-)' are non- > > associative > > and require parenthesesat /tmp/YpB9DyyE64:1------> > > ( 1 .. 3 > > ); my $c = bag(); say $a (+) $b⏏ (-) $c; > > expecting any > > of: i…» > >