Now instead of four in the eights place
You've got three,
'Cause you added one,
That is to say, eight, to the two,
But you can't take seven from three,
So you look at the sixty-fours...
Sixty-four? "How did sixty-four get into it?" I hear you cry!
Well, sixty-four is eigh
As a status update: There is still a Null PMC access with Parrot. With Moar and
JVM everything seems fine:
$ perl6-p -e 'sub a is DEPRECATED((sub { "a" })()) { }; a();'
===SORRY!===
Null PMC access in get_bool()
$ perl6-j -e 'sub a is DEPRECATED((sub { "a" })()) { }; a();' ## identical
output
As a status update: This seems to be specific to the REPL. Executing the code
from the command line throws a typed exception X::Export::NameClash (output is
identical for perl6-m and perl6-j):
$ perl6-p -e 'constant %a is export = 5 => 5; constant %a is export = 5 => 5'
===SORRY!=== Error while
As a status update: There is still a Null PMC access with Parrot and the errors
with Moar and JVM don't look that good as well:
$ perl6-p -e 'sub a is export { "a" }; say EXPORT::ALL'
===SORRY!===
Error while compiling op callstatic (source text: "say EXPORT::ALL"): Null PMC
access in find_metho
I can't reproduce the Null PMC access anymore:
$ cat 118407.pm6
sub abc() is export { say "hello" }
$ perl6-p
> require("118407.pm6") "&abc"; abc();
Trying to import symbols &abc from '118407.pm6', but it does not export anything
> require("118407.pm6") "abc"; abc();
Trying to import symbols ab
Rakudo gets it right now:
$ perl6-m -e 'say (-300...300 X+> -5...5)'
===SORRY!=== Error while compiling -e
Operators '...' and 'X+>' are non-associative and require parentheses
at -e:1
--> say (-300...300 X⏏+> -5...5)
expecting any of:
postfix
infix stopper
infix or
This is still the same as in 2012:
$ perl6 -e 'say not(0) + 1'
False
$ perl6 -e 'say (not 0) + 1'
2
I added a test (fudged "todo") in S03-operators/precedence.t with commit
https://github.com/perl6/roast/commit/156e7e7f474169601d7a6b53fcd20e43ea181609
A typed exception X::Syntax::NonAssociative is now thrown.
$ perl6-m -e 'say [+] "08:12:23".split(":") Z* 60 X** reverse ^3'
===SORRY!=== Error while compiling -e
Operators 'Z*' and 'X**' are non-associative and require parentheses
at -e:1
--> say [+] "08:12:23".split(":") Z* 60 X⏏** reverse ^
Branch: refs/heads/master
Home: https://github.com/perl6/specs
Commit: 9f20af7d7575f6f1fd685a941fd39857a84193a8
https://github.com/perl6/specs/commit/9f20af7d7575f6f1fd685a941fd39857a84193a8
Author: raiph
Date: 2014-11-17 (Mon, 17 Nov 2014)
Changed paths:
M S17-concurre