»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
Mouq lue: Rakudobrew? 00:01
lue I do not know what that is. /me checks
timotimo you're in for a nice surprise 00:02
lue Nah, won't work for me, I don't do --gen-* 00:03
(and besides, I would hope panda/rakudo would be able to take care of what (at least for the non-precomp'd files) is way too granular a versioning scheme :/) 00:04
timotimo the things refer to each other with "cuids", so that's problematic 00:06
lue ooc, any reason rakudobrew is being remarkably un-Perl6 with its non-use of MAIN? 00:07
Mouq lue: Well, it's p5… 00:09
lue that would explain it :) 00:10
But like I said, it won't work for me, I like taking care of the build process and everything myself, it's just that panda should be smarter about this "upgrading" thing. 00:11
dalek kudo/nom: 6ab0e24 | (Tim Smith)++ | src/core/Main.pm:
Simplify program name in $?USAGE if in PATH
00:19
kudo/nom: 7cf9cad | (Alexander Moquin)++ | src/core/Main.pm:
Merge pull request #265 from softmoth/usage-prog-name

Simplify program name in $?USAGE if in PATH
Mouq thou++ # scratching itches 00:20
thou Thanks, Mouq! 00:21
Mouq thou: Thank you!
lue afk 00:29
Mouq std: .say for"a".."z" 00:37
camelia std e347792: OUTPUT«ok 00:01 123m␤»
adu Mouq++ 03:49
Mouq r: say (:a<4>,:b<7>,:c<4>).min(*.value) 04:12
camelia rakudo-parrot 7cf9ca, rakudo-jvm 7cf9ca, rakudo-moar 7cf9ca: OUTPUT«"a" => "4"␤»
Mouq r: say (:c<4>,:b<7>,:a<4>).min(*.value)
camelia rakudo-parrot 7cf9ca, rakudo-jvm 7cf9ca, rakudo-moar 7cf9ca: OUTPUT«"c" => "4"␤»
TimToady r: say (:a<4>,:b<17>,:c<4>).min(*.value) 04:13
camelia rakudo-parrot 7cf9ca, rakudo-jvm 7cf9ca, rakudo-moar 7cf9ca: OUTPUT«"b" => "17"␤»
TimToady n: say (:a<4>,:b<17>,:c<4>).min(*.value)
camelia niecza v24-109-g48a8de3: OUTPUT«"a" => 4␤»
Mouq I feel like I'm just going to keep wanting to solve 2d problems with complex numbers until we have [1;2] semantics in place in Rakudo 04:16
*solve all
lue Complex numbers are a nice way to do 2D though :)
Mouq lue: They really are :) 04:17
lue
.oO( @grid{1+2i} )
Mouq TimToady: Is [1;2] supposed to be eqv to [$((1,),(2,))]? 04:20
lue heh, good thing I decided on a last-minute better test file for a fix to rakudo :)
TimToady Mouq: depends on what you mean by eqv
is more like [lol (1,), (2,)] 04:21
Mouq Okay
TimToady or [$(1,), $(2,)]
but with some knowledge that it actually is a 2-dimensional subscript 04:22
lue I don't suppose there's a way to test if I'm in a delimited code block (vs. paragraph or abbreviated) without adding a new dynvar, right?
TimToady so just passing a list of slices is not quite good enough
lue (the existing CODE_BLOCK just distinguishes between explicit/implicit)
Mouq so then multi postcircumfix:<[ ]> should have a (LoL @) candidate? 04:23
r: say lol((1,), (2,)).perl
n: say lol((1,), (2,)).perl
camelia rakudo-parrot 7cf9ca, rakudo-jvm 7cf9ca, rakudo-moar 7cf9ca: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Undeclared routine:␤ lol used at line 1. Did you mean 'log'?␤␤»
niecza v24-109-g48a8de3: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'lol' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_u…»
Mouq /o\ 04:24
lue: What do you mean?
Mouq lue: In Perl6::Grammar.nqp? 04:24
lue Mouq: yes
Mouq Uhh, why?
TimToady that's really the only reason for having that type
otherwise it would be pure structure
rakudo doesn't really do lol yet
and .tree behaves rather like .lol is supposed to
Mouq TimToady: Okay, thank you for clearing that up for me :) 04:25
lue Mouq: explicit code block with multiline formatting code with lines starting with a pod directive causes errors where not surrounding the same in a formatting code works.
(well, "warnings", but the output formatting ends up being not-totally-right)
Mouq r: =begin code :allow<B>␤B< a b␤c d e␤f g>␤=end code 04:26
camelia ( no output )
Mouq r: =begin code :allow<B>␤B< a b␤=para␤c d e␤␤f g>␤=end code 04:27
camelia rakudo-parrot 7cf9ca, rakudo-jvm 7cf9ca, rakudo-moar 7cf9ca: OUTPUT«Potential difficulties:␤ Pod formatting code B missing endtag '>'.␤ at /tmp/tmpfile:2␤ ------> B< a b⏏<EOL>␤»
Mouq :/
Have fun with that :P 04:28
We can just make it so directives are always allowed in formatting codes in an =code-type context 04:29
lue Mouq: I had it, I just needed to introduce a new dynamic variable to distinguish between =begin code and =for code/=code, because otherwise you could do =for code :allow<B>\nB<line 1\n=head1 line2> which is inconsistent with non-fc'd stuff in =for code
Mouq Yeah
Well lue++ :)
lue *sigh* panda's being the most annoying part of this :/ (I could just use --doc, but it's so much easier to see what goes on in the test file with --doc=HTML) 04:31
Mouq lue: say $=pod.perl? 04:31
lue Mouq: seeing =head1 commands that are either plaintext and bold or big blue headers is much faster :P 04:32
Mouq lue: Fair point
thou Anyone here that can merge into evalbot & restart? 04:34
github.com/perl6/evalbot/pull/5
Mouq thou++ 04:35
looks solid 04:37
thou *NB* I tested the format_names() sub, but not full evalbot! 04:38
Mouq thou: I'll merge it and take the blame if it doesn't work :) Though I'm pretty sure it does 04:39
dalek albot: 1a8a83e | (Tim Smith)++ | evalbot.pl:
Combine eval names sharing prefix & rev
albot: 0ef6d11 | (Alexander Moquin)++ | evalbot.pl:
Merge pull request #5 from softmoth/combine-eval-names

Combine eval names sharing prefix & rev
kudo/nom: e63497d | lue++ | src/Perl6/Grammar.nqp:
Fix pod directives formatting codes in delimited code blocks.

This makes handling of pod directives in code blocks consistent whether or not you've wrapped it in a multi-line (and :allow'd) formatting code.
In delimited code blocks, the only pod directive that can't be stuffed in formatting codes is the same one that can't be in a delimited code block in the first place: =end code. For other code blocks and that pod directive in particular, you'll need to keep = from being the first non-whitespace character, same as before.
04:41
lue I lost a preposition the summary :)
Mouq lue++ 04:44
Much message. Very git. Six. 04:45
Mouq r: class Foo { has @.board; method at_pos (Complex $c) is rw { @.board[$c.re][$c.im] } }; Foo.new[4i] # :( 05:11
camelia rakudo-jvm 7cf9ca: OUTPUT«Cannot call 'Real'; none of these signatures match:␤:(Mu:U \v: *%_)␤ in any at gen/jvm/BOOTSTRAP.nqp:1212␤ in sub infix:<<> at gen/jvm/CORE.setting:4222␤ in sub infix:<<> at gen/jvm/CORE.setting:4222␤ in sub postcircumfix:<[ ]> at gen/jvm/COR…» 05:12
..rakudo-moar 7cf9ca: OUTPUT«Cannot call 'Real'; none of these signatures match:␤:(Mu:U \v: *%_)␤ in sub infix:<<> at src/gen/m-CORE.setting:4222␤ in sub infix:<<> at src/gen/m-CORE.setting:4222␤ in sub postcircumfix:<[ ]> at src/gen/m-CORE.setting:2405␤ in block at /tm…»
..rakudo-parrot 7cf9ca: OUTPUT«Cannot call 'Real'; none of these signatures match:␤:(Mu:U \v: *%_)␤ in any at gen/parrot/BOOTSTRAP.nqp:1219␤ in method Real at gen/parrot/CORE.setting:1032␤ in sub infix:<<> at gen/parrot/CORE.setting:4226␤ in sub infix:<<> at gen/parrot/…»
lue ♘ #perl6 o/ 05:14
Mouq 'night lue! sleep well 05:15
masak sending p6c announcement now. 05:58
sent. 06:01
updating Wikipedia page.
updated. 06:07
this concludes the release process. thank you all, especially PerlJam++.
masak celebrates with the appropriate amount of breakfast 06:08
though the final run of stresstest seems to be stuck on this part of the JVM tests: 06:09
t/spec/S17-concurrency/supply.rakudo.jvm ..................... 12/36 06:10
Mouq masak++ 06:11
masak tries to run it outside of the test harness
outside of the test harness, it gets past 12, but it currently seems stuck after 34... 06:14
sergot morning o/ ! 06:24
FROGGS_ morning 06:25
dalek kudo/nom: 921615b | (Tobias Leich)++ | tools/build/NQP_REVISION:
bump nqp rev for jvm buf16.decode fix
06:35
FROGGS_ hmmm, I killed camelia >.< 06:39
moritz: halp ó.ò
masak consistently on my box, `./perl6-j -Ilib t/spec/S17-concurrency/supply.rakudo.jvm` hangs after 'ok 34'. 06:52
can anyone duplicate that?
FROGGS_ masak: I also had a hanging test about S17... I'll check if it is that one after breakfast 07:13
masak FROGGS_: nice. 07:18
dalek albot: 28fad69 | (Tobias Leich)++ | evalbot.pl:
declare loop variable $p

this hopefully unbreaks the evalbot
07:58
nwc10 masak: yes, I can duplicate it 07:59
FROGGS_ is here somebody else who can pull camelia on featherX and the start it? 08:09
nwc10 sshd───bash─┬─emacs └─make───perl─┬─java───50*[{java}] └─perl 08:10
oops
let's try that again without irssi being helpful
FROGGS_ hmmm, that looks kinda interesting :o)
nwc10 sshd───bash─┬─emacs
└─make───perl─┬─java───50*[{java}]
└─perl 08:11
but anway, 50 is too many to try using strace to work out what they are up to
nwc10 but whatever it is, it's not using CPU 08:11
nwc10 suspects deadlock of some sort
FROGGS_ yeah, it hangs when cleaning up and shutting down the threads I guess 08:12
apejens related to the concurrecny tests hanging maybe?
FROGGS_ it is a concurrency test, aye 08:13
bbiab
Ven_ perl6: my @a = <a b c>; @a Z[~=] <x y z>; say @a 08:25
oh, camelia is down 08:26
what's the difference between `$v <<[==]>> @set` vs `$v <<[Z==]>> @set` ? 08:31
(and between `$v == any(@a)` and `$v <<[==]>> @a`) 08:33
moritz m: say 42 09:03
camelia rakudo-moar 921615: OUTPUT«42␤» 09:03
Ven_ perl6: my @a = <a b c>; @a Z[~=] <x y z>; say @a
camelia rakudo-jvm 921615: OUTPUT«(timeout)» 09:04
..rakudo-{parrot,moar} 921615, niecza v24-109-g48a8de3: OUTPUT«ax by cz␤»
Ven_ bracketed++
moritz j: say 1 09:05
camelia rakudo-jvm 921615: OUTPUT«1␤»
sergot j: print 1 for ^100; 09:12
camelia rakudo-jvm 921615: OUTPUT«1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111»
sergot j: print '' for ^100; 09:13
camelia ( no output )
sergot j: print '' for ^10000;
camelia ( no output )
sergot j: my @a = <a b c>; @a Z[~=] <x y z>; say @a 09:14
camelia rakudo-jvm 921615: OUTPUT«ax by cz␤»
Ven_ stress-testing r-j 09:17
.oO( was `EVAL` made uppercase for golfing ? )
09:18
moritz masak++ # Rakudo release, "Really"
Ven_ Seems like I'm the only one who didnt set up his name on github, eh 09:19
moritz Ven_: lue hasn't either, iirc 09:19
it's fine by us if you want to stay anonymous/pseudonymous 09:20
just if you want to contribute to rakudo on a larger scale, you'll need to submit a signed CLA
Ven_ Yeah. bad things happened last time I put my name up somewhere, so I'll leave it as that for now 09:25
(I get the need for a CLA, though, obviously)
timotimo tadzik: you'll have to build a bunch more stuff for steroids if you want to present it :P 09:35
tadzik timotimo: I know :P 09:36
Woodi hallo :) 09:39
masak++ # R*++
btw. anyone remembers that link to Rakudo Easter Eggs page ? 09:40
timotimo happy ishtar, friends 10:56
woolfy1 Have a nice weekend 11:10
jnthn o/ 11:15
JimmyZ \o 11:39
moritz Woodi: rt.perl.org/ # rakudo easter eggs documented here 11:48
Woodi oo, Bitcard, look nice :) 11:50
jnthn++ also ! 11:51
Woodi btw. I wonder if we (IT) are reinventing processes with infrastructure in threads with stuff form... 11:54
moritz can't make sense of "with stuff form" 11:56
Woodi moritz: just some bad "poetic" description... excuse for not being precise realy :) 11:57
Ven m: say ("a".."z).roll(1) x 5
camelia rakudo-moar 921615: OUTPUT«===SORRY!=== Error while compiling /tmp/9Bc6tKm0Zx␤Unable to parse expression in double quotes; couldn't find final '"' ␤at /tmp/9Bc6tKm0Zx:1␤------> say ("a".."z).roll(1) x 5⏏<EOL>␤ expecting any of:␤ …»
Ven m: say ("a".."z").roll(1) x 5
camelia rakudo-moar 921615: OUTPUT«ccccc␤»
moritz m: say ("a".."z").roll(1) xx 5 11:58
camelia rakudo-moar 921615: OUTPUT«y b k u n␤»
Ven mmh, I guess it makes sense for x not to "thunk" (correct word here ?)
moritz right
Ven just a bit of a surprise 11:59
Ven just convinced 2 new friends of how expressive perl 6 is 12:02
Well, it's not like it's any hard :-)
I just show them "$a == 1 | 3" and they're "OH WOW - That's right, we're in 2014 !" 12:03
uuh, is perl6.org down ? 12:09
jnthn works for me 12:10
dalek ar: b1fd704 | moritz++ | tools/star/Makefile:
[Makefile] bump some revisions
moritz jnthn++ is signed up as R* release manager, I'm just doing some initial preparations
jnthn Go for it! :) 12:11
Ven uuuh wat 12:12
Works with curl, but chrome fails
jnthn just got it in chrome...
huf works in chrome from here... 12:13
moritz Ven: maybe IPv4/IPv6 issue?
jnthn Hmm...current HEAD of Rakudo fails some spectests in stuff related to usage message generating.
Ven Works it in safari, and I don't get it with chrome. WAT.
huf welp, stop using chrome, it's not a very good browser anyway :D
moritz Ven: try curl -4 and curl -6
Ven curl -6 fails
moritz argl 12:14
we have recursive submodules in star
nwc10 you mean mutually recursive dependencies? 12:15
moritz now modules/panda says that ext/File__Find and ext/JSON__Tiny have new commits
I guess that means we shouldn't update them, because they are under panda's control, right?
dalek ar: 55ec7c1 | moritz++ | modules/doc:
Update modules/doc
12:16
Ven r: / : / 12:19
camelia rakudo-{parrot,jvm,moar} 921615: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter : (must be quoted to match literally)␤at /tmp/tmpfile:1␤------> / :⏏ /␤Unrecognized regex metacharacter (must be quoted to match literally)␤at /tm…»
Ven std: / : /
camelia std e347792: OUTPUT«===SORRY!===␤Backtrack control ':' does not seem to have a preceding atom to control at /tmp/qkzhi2_drm line 1:␤------> / :⏏ /␤Parse failed␤FAILED 00:01 122m␤»
Ven rt.perl.org/Public/Bug/Display.html?id=77786 seems that is (at least) fixed ?
moritz yes, can be fixed with unit tests 12:20
Ven Ohhh, now I get a bunch of nullchars on perl6.org. Progress ! 12:21
moritz m: try EVAL q[/:/]; say $!.perl
camelia rakudo-moar 921615: OUTPUT«X::Syntax::Regex::UnrecognizedMetachar.new(metachar => ":", filename => "eval_0", line => 1, column => Any, modules => Array.new(), is-compile-time => 1, pre => "/:", post => "/", highexpect => Array.new("statement list", "prefix or term", "prefix or meta-…»
dalek ar: db23938 | moritz++ | docs/announce/2014.04:
Draft release announcement 2014.04
12:23
moritz does anybody know the package name of the openjdk 7 JDK on RedHat/Fedora/CentOS? 12:26
dalek ar: 6abe271 | moritz++ | / (2 files):
udpate README, and version in Makefile.in

README is still not quite tristar ready
12:29
dalek ar: 4d33dbc | moritz++ | Configure.pl:
[Configure.pl] support --backends=all
12:42
Ven r: my %h = a => 1; say %h{a}; 12:43
camelia rakudo-{parrot,jvm,moar} 921615: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Undeclared routine:␤ a used at line 1␤␤» 12:44
Ven oh, perl5
moritz Ven: use %h<a> to get automatic quoting
Ven moritz: No no, I was just weirded out from a change then I realized it was Configure.pl and it was perl5 12:45
moritz R*'s --gen-moar doesn't seem to work
ah no, I forgot to specify --gen-moar 12:46
dalek ast: 195d9c0 | (Elizabeth Mattijsen)++ | S17-concurrency/supply.t:
Fudge Supply.merge test for JVM also

So at least we know the problem is in rakudo, not in the VM (most likely)
12:49
dalek kudo/nom: 1b47edb | (Elizabeth Mattijsen)++ | src/core/Supply.pm:
Don't hide problems in Supply.mergs -> more handling
12:55
xenoterracide does p6 have any kind of "namespace" support? I don't think that it does... 12:56
r: module Foo; class Bar { } 12:57
camelia ( no output )
xenoterracide not sure that that would actually be DWIM
lizmat r: package Zop {}; grammar DonkeyKong {} 12:58
Ven m: module Foo { our $bar = 1; }
camelia ( no output )
( no output )
Ven m: module Foo { our $bar = 1; }; say Foo::$bar;
camelia rakudo-moar 921615: OUTPUT«===SORRY!=== Error while compiling /tmp/3KPyYnh5wi␤Two terms in a row␤at /tmp/3KPyYnh5wi:1␤------> module Foo { our $bar = 1; }; say Foo::⏏$bar;␤ expecting any of:␤ postfix␤ infix stopper…»
jnthn Wants to be $Foo::bar
Ven m: module Foo { our $bar = 1; }; say $Foo::bar;
camelia rakudo-moar 921615: OUTPUT«1␤»
Ven kinda guessed so, but wasn't sure 12:59
lizmat jnthn: when using the EnumMap variant of "on"
we somehow lose the supply being passed to the "more" code
resulting in this:
gist.github.com/lizmat/11042880
jnthn lizmat: On JVM and Moar, or just on Moar?
lizmat apparently on both, since the same test hangs on the JVM, as masak found out 13:00
jnthn ah
lizmat the CATCH was hiding the problem, which is another issue we need to think about, I guess
Ven somehow got on a oct2000 perl6 thread 13:03
lizmat jnthn: feels a bit like an over-eager optimization to me
jnthn lizmat: Not sure how, in so far as the CATCH appears to propagate the error... 13:04
lizmat: Optimization at what level?
lizmat rakudo level
wrt to the CATCH: without github.com/rakudo/rakudo/commit/1b47edb602 13:05
you don't see the problem at *all*
which caused me quite some headbanging in the past days :-(
xenoterracide r: module LM::Model; class Activity is export { }
camelia ( no output )
jnthn lizmat: The problem isn't there. The problem is that whatever subscribed to the supply doesn't throw. 13:07
uh, tapped it, even.
Supply.tap, in the absence of a "quit" handler, should probably add a default one that dies with anything it receives. 13:08
lizmat: I mean in Supply.pm, around line 21 13:09
method tap(&more, :&done, :&quit) {
Could be more like
method tap(&more, :&done, :&quit = { die $_ }) {
Ven m: sub foo(&bar) { bar?() }; foo(-> {say 'a'}) 13:10
camelia rakudo-moar 921615: OUTPUT«===SORRY!=== Error while compiling /tmp/9KT04iri12␤Two terms in a row␤at /tmp/9KT04iri12:1␤------> sub foo(&bar) { bar⏏?() }; foo(-> {say 'a'})␤ expecting any of:␤ argument list␤ postfix…»
lizmat trying that
moritz why not &quite = &die ? 13:11
jnthn lizmat: Not sure if it'll work right off, but I think we want to have a general fix for not dropping errors on the floor.
moritz: uh, 'cus i didn't think of it :)
moritz: That's better :)
lizmat Type check failed in binding &quit; expected 'Callable' but got 'Sub+{<anon>}' 13:13
guess not better :-(
jnthn wtf... 13:14
lizmat r: my &foo = &die
camelia rakudo-{parrot,jvm,moar} 921615: OUTPUT«Type check failed in assignment to '&foo'; expected 'Callable' but got 'Sub+{<anon>}'␤ in block at /tmp/tmpfile:1␤␤» 13:15
lizmat seems pretty consistent :-)
wouldn't :&quit = {.throw} be better ? 13:16
jnthn Wouldn't work on a string error, is all
moritz the +{<anon>} likely comes from the is hidden_from_backtrace 13:16
but it shouldn't type-check fail 13:17
lizmat r: sub a is hidden_from_backtrace {}; my &b = &a
camelia ( no output )
dalek kudo/nom: 2180049 | (Elizabeth Mattijsen)++ | src/core/Supply.pm:
Properly throw exceptions in taps
13:24
ast: 20aa4f3 | (Elizabeth Mattijsen)++ | S17-concurrency/supply.t:
Better guard supply tests against hangs
13:26
lizmat jnthn: fwiw, I'm at a loss to fix the "on" EnumMap case problem, so would appreciate any feedback :-) 13:31
jnthn lizmat: I don't immediately see what's going on either 13:33
lizmat: I'll have to dig a bit deeper 13:34
lizmat ok, I'll focus on getting other Supply methods working 13:36
jnthn OK, great. I'm currently taking a look at timers, and getting rid of the last JVM-specific bits in ThreadPoolScheduler. 13:38
lizmat timers would be cool :-) 13:40
jnthn Yeah. Doing the nqp:: abstraction stuff first.
And then will look at the Moar impl.
lizmat r: Exception.die 13:48
camelia rakudo-jvm 1b47ed: OUTPUT«(timeout)»
..rakudo-{parrot,moar} 1b47ed: OUTPUT«No such method 'die' for invocant of type 'Exception'␤ in block at /tmp/tmpfile:1␤␤»
lizmat jnthn: any objections on adding a "method die { die(self) }" to src/core/Exception ? 13:49
jnthn lizmat: There's already a .throw? 13:53
lizmat jnthn: another datapoint: changed signature from "sub ($val) {...}" to -> ($val) {...}, gives:
lizmat Not enough positional parameters passed; got 0 but expected 1 in sub-signature 13:53
(gist.github.com/lizmat/11042880)
jnthn lizmat: Uh, why the parens? 13:54
lizmat ah, copy pasto
jnthn :) 13:55
jnthn The "in sub-signature" was probably the best clue :) 13:55
lizmat There's an Exception.throw, if that is what you meant
lizmat changing it to -> $var gives the same error :-) 13:56
dalek kudo/nom: 99ff702 | (Elizabeth Mattijsen)++ | src/core/Exception.pm:
Implement Exception.die for convenience in handlers
14:06
jnthn lizmat: scheduler.t doesn't seem to compile? 14:08
Two terms in a row
at t\spec\S17-concurrency\scheduler.t:103
Near some cas thingy?
lizmat ah, those tests are skipped now, right? 14:09
so I didn't see any errors... lemme check
jnthn They're skipped on Moar.
JVM doesn't have any skips in there 14:10
Anyway, it's certainly a syntax error
I guess missing semi?
dalek ast: 6a7443a | (Elizabeth Mattijsen)++ | S17-concurrency/scheduler.t:
Fix compilation typo
14:11
lizmat should compile now
FROGGS_ r: say nqp::p6box_s(nqp::decode(Buf.new(0x03, 0x26), "utf16")) 14:14
camelia rakudo-{parrot,jvm,moar} 1b47ed: OUTPUT«☃␤»
jnthn It does, though fails
# got: '1scatch2s'
# expected: '1s1scatch2s'
lizmat hmmm... 14:15
jnthn Lemme check it' snot my changes though
FROGGS_ jnthn: I updated gist.github.com/FROGGS/0ea5537eb675588baaa2 (MIME::Base64 passes now on jvm too) 14:16
lizmat looks to me like the "more" is not done in the "die" case
scratch that 14:17
looks like the die is preventing the cas from completion ? 14:18
jnthn yeah, I got something wrong...
lizmat: of course it will
timotimo do we package perl6/docs within star, btw?
jnthn lizmat: The die happens while computing the new value to cas 14:19
The die should be outside of the block passed to cas, as a statement after it, I think?
{ cas $tracker, {$_ ~ '1s'; die } },
should be
{ cas $tracker, {$_ ~ '1s' }; die },
lizmat yup, indeed 14:20
will fix
jnthn My second fail looks like a thinko in my changes to use nqp::timer
dalek ast: 0f2e91b | (Elizabeth Mattijsen)++ | S17-concurrency/scheduler.t:
Fix thinko, spotted by jnthn++
14:21
jnthn lizmat: That helps, but now I get: 14:29
not ok 24 - Cue on ThreadPoolScheduler with :times(10)
r: my $tracker; say $tracker.succ 14:30
camelia rakudo-{parrot,jvm,moar} 1b47ed: OUTPUT«No such method 'succ' for invocant of type 'Any'␤ in block at /tmp/tmpfile:1␤␤»
jnthn ah
dalek p/asyncops: d958b6b | jnthn++ | src/vm/jvm/QAST/Compiler.nqp:
Stub in timer and cancel ops on JVM backend.
14:31
p/asyncops: 3b3ccda | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/ (2 files):
Partially implement nqp::timer.

Missing cancellation-related bits so far.
ast: 83438f8 | jnthn++ | S17-concurrency/scheduler.t:
Correct :times test to initialize $tracker.
14:32
lizmat jnthn++ 14:33
dalek kudo/async: a71eccd | jnthn++ | src/core/ThreadPoolScheduler.pm:
Switch ThreadPoolScheduler to use nqp::timer op.
jnthn That now fully passes scheduler.t on JVM.
lizmat cool! 14:34
jnthn (And breaks Moar build for now, which is why it's in a branch.)
dalek kudo/nom: 3922904 | (Elizabeth Mattijsen)++ | src/core/SupplyOperations.pm:
Remove unneeded lexicals
14:41
hoelzro ahoy #perl6! 15:05
vendethiel o/ hoelzro 15:06
lizmat hoelzro, vendethiel o/ 15:12
[Coke] masak: (S17-concurrency) this test was hanging on the daily runs occasionally, yes. 15:18
hoelzro jnthn: are you around? 15:19
I have some questions about your FOSDEM talk that I forgot to ask when I was UTC+1
FROGGS_ masak: it looks like test 15 hangs 15:21
dalek ast: 76dc363 | (Elizabeth Mattijsen)++ | S17-concurrency/supply.t:
Use slightly more sensible variable names
lizmat FROGGS_: S17 tests should not hang anymore: fail maybe, but not hang
FROGGS_ ahh, cool 15:22
then I need to pull/rebuild
lizmat if a test fails because things that are being expected do not arrive, it should now wait at most 5 seconds 15:23
[Coke] lizmat: yay. 15:24
lizmat please let me know if I missed any hangs :-) 15:25
[Coke] today's run is already running, we'll know tomorrowish.
(I am adding in the ulimit timer now, will try another run sooner, actually) 15:26
jnthn hoelzro: Am now.
hoelzro excellent =) 15:34
so there's this syntax: 15:35
method !calculate(YearlyStatistics: &thing-to-do)
what's the colon mean there?
oh
jnthn Invocant.
hoelzro or is it just calculate(YS :&thing-to-do)?
hmm
jnthn No, it's for some reason specifying the invocant type explicitly. 15:36
hoelzro so if you specify the invocant, you don't need to specify the name, then?
jnthn No
hoelzro interesting
jnthn Well, same for any param really
r: sub foo(Int) { }; foo(42)
camelia rakudo-jvm 99ff70: OUTPUT«(timeout)»
( no output )
hoelzro then there was this bit in the Grammar/actions 15:37
$<observation>.map(*.ast).grep(*.value.none <= -99)
that wildcard expr is awesome, but I couldn't figure out where none is coming from
jnthn Any 15:38
It's the method form of the none(...) sub
which constructs a junction.
hoelzro oooooohhhhh
I see
thanks =)
jnthn np :)
timotimo i could have answered all those questions :P 15:42
raiph m: say "hello world" #6now #helloworld (please ignore; I'm just cooking something up)
camelia rakudo-moar 99ff70: OUTPUT«hello world␤»
raiph irclog.perlgeek.de/perl6/2014-04-18#i_8607530 #6now 15:43
timotimo you're tweeting everything with that hashtag automatically from the irclog? :) 15:44
and that hashtag is not yet taken for anything else?
654s for moar 15:49
jnthn timotimo: To do what? :) 15:50
dalek pan style="color: #395be5">perl6-examples: 4ac6dea | (Shlomi Fish)++ | euler/prob168-shlomif.p6:
[Euler] Add solution for #168.
raiph timotimo: Tweeting is only a minor part (and my thinking is there'll be nothing automatic in that regard unless the exact right incantation comes from the TimToady nick). I'll explain what I'm thinking in a while. 15:56
[Coke] print "asdf\n" is better said as say "asdf" ^^ 15:57
vendethiel r: 5.none 16:01
camelia rakudo-jvm 392290: OUTPUT«(timeout)» 16:02
( no output )
vendethiel m: (5).none == 3
camelia ( no output )
vendethiel m: say (5).none == 3
camelia rakudo-moar 392290: OUTPUT«none(False)␤»
vendethiel m: say (5).any == 3
camelia rakudo-moar 392290: OUTPUT«any(False)␤»
timotimo 965 for parrot 16:07
jnthn: a highly randomness-dependent benchmark
moritz Testing modules/zavolaj... 16:19
t/01-argless.t ......... /bin/sh: 1: PREFIX: not found
(in star 'make module-test')
the tests pass anyway
retupmoca m: say $*VM<config><ldflags> # pretty sure this is where that comes from 16:22
camelia rakudo-moar 392290: OUTPUT« -O1 -DNDEBUG -Wl,-rpath,$(PREFIX)/lib␤»
FROGGS_ yes 16:24
I thought I fixed that though...
moritz the LWP::Simple tests fail on the JVM 16:29
java.lang.NullPointerException in sub scheme_port at /home/moritz/p6/star/rakudo-star-2014.04/install/languages/perl6/lib/URI/DefaultPort.pm:32
FROGGS_ moritz: here is the test out: gist.github.com/FROGGS/0ea5537eb675588baaa2 16:30
(stripped down to failures) 16:31
moritz why the heck do the DBIish mock tests fail on the JVM, when they are the ones that should be most platform independent? 16:32
retupmoca moritz: none of the other tests actually run unless you have the right environment set up for them 16:33
moritz: otherwise they just skip(), iirc
moritz retupmoca: ah, fair point 16:35
dalek ar: a6cac5b | moritz++ | tools/build/modules-test.pl:
Include $perl6 in testing output
16:42
FROGGS_ moritz / retupmoca: the warnings about PREFIX are gone now 16:43
retupmoca FROGGS++
moritz FROGGS_: what did you patch?
FROGGS_ see #moarvm
moritz ah, so in the next release 16:44
FROGGS_ we need to bump revisions though
yes
timotimo that benchmark i had used was the rosettacode task "Brownian Tree", btw 16:52
i would have liked it to be much faster, but whatevs :) 16:53
TimToady it would seem like a random walk algorithm would not be sufficiently predictable to serve as a decent benchmark, but maybe with enough points... 16:54
moritz or with fixed srand() 16:56
timotimo that's right. though, if moar was 10x faster than rakudo, it'd still be visible :P 17:08
timotimo or 100x 17:08
er, faster than parrot i meant
well, i did turn off spesh, because locally i have the not-yet-functional named-to-positional branch 17:09
Mouq is this R* realease going to include all the backends? :# 17:10
:3
vendethiel .u ☃ 17:11
yoleaux U+2603 SNOWMAN [So] (☃)
FROGGS_ Mouq: it will be more likely be r-p* and r-m*
Mouq FROGGS_: Sweeeeet :) What's wrong with r-j*? 17:12
FROGGS_ Mouq: see gist.github.com/FROGGS/0ea5537eb675588baaa2 17:17
Mouq FROGGS_: I see :| Thanks! 17:19
arturo hello #perl6. I was wondering, how does one become a perl6 rakudo contributor? As in, someone who works on implementing the rakudo itself? 17:24
jnthn arturo: Find something interesting (to you) to work on - probably something smallish at first. And then dig in, ask questions, etc. The compiler tools and overall internals can be learned through the course material at github.com/edumentab/rakudo-and-nq...als-course 17:27
lizmat then fork rakudo and create pull requests, right? 17:33
jnthn Right. :) 17:34
arturo jhthn: Thanks! Is there a developer guide or "getting started" document? 17:34
lizmat jnthn: ^^^ :-) 17:36
jnthn arturo: Well, the course I linked to is by far the best set of documentation on how stuff works. 17:37
arturo: It was created explicitly to help people get into working on Rakudo.
timotimo oh 17:38
timotimo we neglected to mention that there's also good performance improvements on non-moarvm rakudos in this release 17:39
jnthn timotimo: Well, can mention it in the Star announce :)
timotimo aye 17:41
arturo jhthn: I didn't notice it was a course. Thanks so much, I'll take a look and get involved. 17:44
lizmat arturo welcome! 17:45
arturo: it's jnthn , not jhthn by the way :-) 17:46
arturo lizmat: I know, I typed too fast :-P
lizmat helps getting someone's attention if you spell the name right
most IRC clients have auto-completion on names
jn<TAB> is usually enough
arturo lizmat: cool! This is my first time using IRC, tab expansions is definitely helpful. 17:47
expansion*
Mouq arturo: Welcome :) Something that helped me when I first joined was watching commits flow and trying to understand what they did and how 17:56
I don't know if that's helpful anyone besides myself
(a simple one: github.com/rakudo/rakudo/commit/99ff702 ) 17:57
FROGGS_ also it might be easier for some ppl to start by fixing bugs, that is by looking at rt.perl.org 17:58
others might want to implement something, these could make use of github.com/rakudo/rakudo/blob/nom/docs/ROADMAP
raiph timotimo: questhub.io/realm/perl/quest/53516...ef19000022 17:59
timotimo mhm mhm 18:18
lizmat guten Appetit! 18:23
cognominal G grand a petit 18:33
vendethiel what 18:39
arturo Mouq: thanks, thats a good idea. I'll keep an eye on those
raiph timotimo: I'm not sure if it's obvious to others based on my notes in that quest, but my intent is that these one liners serve many purposes: becoming a complement to roast; being a pedagogy DB; being a FAQ DB; being a source for the one liner videos if you/someone wants to do them; for attracting folk to #perl6 now via twitter; and more 18:43
cognominal a data point: when bzip2-ed the moar core setting drops from ~10MB to ~1.5MB 18:45
timotimo aye 18:47
TimToady blames all the inlining, or maybe Unicode, or maybe something else :) 18:50
dalek kudo/nom: 9ce36b9 | (Elizabeth Mattijsen)++ | src/core/Supply (2 files):
Implement Supply.uniq
btyler I know folks here have generally enjoyed SpaceX streams -- there's a launch going off in 35 minutes
dalek ast: 647d15e | (Elizabeth Mattijsen)++ | S17-concurrency/supply.t:
Reorganize tests, add tests for Supply.uniq
raiph timotimo: was that aye addressed to cognominal++ or me? if me, are you saying the five purposes all made good sense to you? 18:52
dalek kudo/nom: 647a777 | (Elizabeth Mattijsen)++ | docs/ChangeLog:
Update ChangeLog
cognominal ralph, I like the idea of a Perl 6 twitter feed composed of oneliners. 18:53
TimToady well, tweets don't have to be one line 18:55
raiph what about being a complement to roast? 18:56
cognominal on the other hand, some very short tweets can be explained in one tweet.
raiph one of the ideas is that the tweet links back to the irclog 18:57
and on channel context and discussion explains the tweet
and/or a short khan academy like video explains it
timotimo raiph: applicable to both :) 18:58
raiph i've written up a quest that tries to explain how easily we could do this and how many things we could get out of it 18:59
questhub.io/realm/perl/quest/53516...ef19000022
tadzik oh-oh, github.com/hoelzro/sahara-sync 19:02
raiph cognominal, timotimo: as TimToady notes this isn't really just about one liners either (our evalbots take gists, tweets can link) 19:04
timotimo right
and my videos can have more stuff than just a single line in them :)
raiph right
a key thing is it's initially just some simple conventions for comments so we could start doing it today 19:05
hoelzro tadzik: ? 19:06
tadzik hoelzro: I like that :)
hoelzro thanks =)
I was thinking about it today, and I had some pretty good ideas
too bad I stopped working on it when I moved to Europe =/
lizmat now you're back in the US, do you have time for it now ? 19:07
dalek rlito: f4c2b3e | (Flavio S. Glock)++ | src5/lib/Perlito5/Grammar/Regex5.pm:
Perlito5 - Perlito5::Grammar::Regex5 more details
raiph i have to run for an hour or three but I'd really appreciate knowing that at least two folk have read ALL of my quest -- it's not really that long or complicated -- *especially* if one of them were TimToady and he gave it his blessing and/or commented on it. 19:09
hoelzro lizmat: it wasn't a time thing in NL; it was a lack of need for it
I only had my own laptop, so I had nothing to sync
now I have 2 laptops and a desktop =/ 19:10
so I *do* have need for it now
so I'm considering reviving it
lizmat hehe... ok
seems the world could be ready for it
timotimo hoelzro: will you work on the kate syntax highlighter first? :3
hoelzro hahahaha
timotimo: yes
timotimo yay
hoelzro SS will be a huge time sink
pun intended ;)
timotimo i'ven't done anything new with regards to qtcreator in the mean time :\ 19:11
hoelzro that's cool; otherwise I'd feel guilty
timotimo it's just such a huge blob of work and i don't know where to grab it and i get discouraged
hoelzro I just rebuilt my machine last night
timotimo my desktop is due for a system re-install, too :|
hoelzro and I've been taking classes and playing Dragon's Crown/Rogue Legacy
but I've beaten both of them now, so I should have time =)
timotimo haha, at first i read that as "taking classes on playing" :D 19:12
hoelzro hahaha
Mouq raiph++ :) 19:13
lizmat T minus 5 19:20
nwc10 T-5 minutes: www.spacex.com/webcast/
lizmat T minus 30 secs 19:25
dalek rlito: 3eecee9 | (Flavio S. Glock)++ | src5/lib/Perlito5/Grammar/Regex5.pm:
Perlito5 - Perlito5::Grammar::Regex5 more details
19:39
gaussblurinc_ hi! does perl 6 have stable version now? 19:45
I want to write grammar parser with it
lizmat that should probably work :-) 19:46
timotimo except for occasional bugs and a small amount of not yet implemented little things, you can already use rakudo
FROGGS_ gaussblurinc_: yes, it should work very well for that kind of thing
Mouq gaussblurinc_: Perl 6 grammars and regexes are very stable. Especially considering that Rakudo Perl 6 uses a Perl 6 grammar to parse Perl 6 programs 19:47
tadzik parsers are pretty well battle-tested
FROGGS_ there are parsers for Perl5, C99, JSON, XML, YAML and some more things already
jnthn Aye, grammars are one of the really stable bits in so far as little changes there any more, and we ue the same engine to parse Perl 6 programs also. :)
timotimo but the yaml parser doesn't run its tests because testml isn't working :P
jnthn *se
Mouq FROGGS_: No YAML Parser actually :(
FROGGS_ ewww :/
jnthn *use
FROGGS_ Mouq: ohh, okay 19:48
Mouq FROGGS_: Just a YAML Dumper
FROGGS_ k
_sri maybe you shouldn't oversell rakudo all the time, people will only end up disappointed
FROGGS_ _sri: did we?
gaussblurinc_ great one! and how about core modules like File::* ? They are good enough? 19:49
_sri can something be stable if you don't have any guaranteed backwards compatibility?
imo it's better to undersell and overdeliver
vendethiel just sells perl6 to people, rakudo just happens to be here
FROGGS_ _sri: just read what timotimo and jnthn said
gaussblurinc_: stuff like File::Spec is built into the language... what else do you need? 19:50
(and File::Slurp also fwiw)
tadzik gaussblurinc_: well, some of them work, some apparently have test failures
so: it varies
gaussblurinc_ File::Find
FROGGS_ File::Find is there in the ecosystem (modules.perl6.org) 19:51
_sri FROGGS: most people consider stable = i can bet my business on it, not stable = lots of stuff kinda works
FROGGS_ though, it is kinda slow I think
Mouq _sri: NQP's bootstrapping guarantees backwards compatibility pretty strongly :P
FROGGS_ _sri: that is what we said. there are bugs and NYI's but grammars work fine
so one can judge on its own if that is enough or not 19:52
dalek kudo-star-daily: 0c509c8 | coke++ | log/ (5 files):
today (automated commit)
timotimo Mouq: no, it does not. we sometimes do update the stage0s
FROGGS_ because there is no true answer when you do not really know what it the problem to solve
Mouq timotimo: I was being a little hyperbolic, but it still really disincentivizes breaking changes to grammars 19:53
lizmat regarding backwards compatibiity: we heve several "is DEPRECATED"| features already 19:54
and you can mark your own:
FROGGS_ heck, Perl 5 does not "guarantee" backwards compat to 100% there is a deprecation cycle (like for given/when)... but of course the deprecation cycle is shorter because the language itself is younger
but this will grow and grow longer
lizmat r: sub a is DEPRECATED { say "foo" }; a
camelia rakudo-{parrot,jvm,moar} 647a77: OUTPUT«foo␤Saw 1 call to deprecated code during execution.␤================================================================================␤Sub a (from GLOBAL) called at:␤ /tmp/tmpfile, line 1␤Please use something else instead.␤---------…» 19:55
timotimo that wouldn't catch semantic changes to rules, for example
_sri suggestion: adopt stability levels for features like node.js that are pointed out in documentation nodejs.org/api/http.html#http_http
lizmat r: sub a is DEPRECATED("b") { say "foo" }; a
timotimo which is the hardest piece to guard against
camelia rakudo-{parrot,jvm,moar} 647a77: OUTPUT«foo␤Saw 1 call to deprecated code during execution.␤================================================================================␤Sub a (from GLOBAL) called at:␤ /tmp/tmpfile, line 1␤Please use b instead.␤----------------------…»
timotimo and we still have things that make you think a bit about the structure of your stuff
like recently we chagned that private attributes from inside roles get visible to the classes that the roles are applied to
FROGGS_ _sri: that is an excellent idea 19:56
lizmat let me just say that in Perl 6, we already anticipated changes to be made in the future
tadzik OOOH
did we finally?
timotimo tadzik: i think so
or something in that direction anyway
tadzik there is this refactoring of sets/bags that I started back on gpw 2012 or so
lizmat tadzik: only one level
tadzik probably someone else did it already though 19:57
FROGGS_ _sri: in fact we should mark all sections of the spec that way... @TimToady: do you agree? (because it might be your job then :O)
lizmat colomon did niecza, I did rakudo mostly
FROGGS_ err, :P even
sjn wouldn't mind having made "is DEPRECATED" and such into a generic code annotation tool
timotimo r: role attrd { has $!foo }; class foo is attrd { method test { say $!foo } }; foo.new.test
camelia rakudo-{parrot,jvm,moar} 647a77: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Attribute $!foo not declared in class foo␤at /tmp/tmpfile:1␤------> o is attrd { method test { say $!foo } }⏏; foo.new.test␤ expecting any of:␤…»
timotimo i'm obviously wrong
btyler can "is DEPRECATED" point to the suggested newer alternative?
lizmat s/is/does ?
r: sub a is DEPRECATED("a NEWER alternative") { say "foo" }; a 19:58
camelia rakudo-{parrot,jvm,moar} 647a77: OUTPUT«foo␤Saw 1 call to deprecated code during execution.␤================================================================================␤Sub a (from GLOBAL) called at:␤ /tmp/tmpfile, line 1␤Please use a NEWER alternative instead.␤----…»
tadzik sad panda
lizmat btyler: yes
retupmoca r: role attrd { has $!foo }; class foo does attrd { method test { say $!foo } }; foo.new.test
camelia rakudo-{parrot,jvm,moar} 647a77: OUTPUT«(Any)␤» 19:59
sjn is FEATURE_FROM_VERSION("1.0")
FROGGS_ Mouq / lue: do we have background colouring in Pod? like in the spec pages?
jnthn sjn: They're just traits; you can define your own 20:00
sjn jnthn: yeah, I know
jnthn ah, k :)
sjn jnthn: I'm just contemplating if there's a generic code annotation feature hidden in there somewhere :)
gaussblurinc_ thanks for help, guys! good evening!
sjn that one could query 20:01
FROGGS_ o/
sjn or attach callbacks to
lue FROGGS_: the doc pages have it, but perlcabal.org/syn has yet to get the better stylesheet
lizmat in any case,I would like to point out that is DEPRECATED tells you *where* the deprecated code is called
tadzik sjn: maybe that can be done with #= somehow
FROGGS_ sjn: there is nothing specced/implemented like that yet
lizmat and what you should use instead
r: "foo".ucfirst.say
camelia rakudo-{parrot,jvm,moar} 647a77: OUTPUT«Foo␤Saw 1 call to deprecated code during execution.␤================================================================================␤Method ucfirst (from Cool) called at:␤ /tmp/tmpfile, line 1␤Please use 'tc' instead.␤------------…»
FROGGS_ lue: and so we can have sections in Pod like "stable"/"somethinginbetween"/"slushy" and "draft", which we can render then differently? 20:02
lue FROGGS_: there's nothing programmatically distinguishing things of various stableness, and I doubt anyone wants to try :) 20:03
timotimo retupmoca: thanks! i made a dumb mistake :) 20:04
FROGGS_ lue: no, I am more thinking of wrapping sections of Pod into some kind of layer, that gets the property (==CSS class) "stable" then
timotimo tadzik: no reason to be sad panda!
lizmat r: my $b = KeyBag.new; say $b 20:05
camelia rakudo-{parrot,jvm,moar} 647a77: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfile␤Undeclared name:␤ KeyBag used at line 1␤␤»
lizmat hmmmm...
lue You'll have to see Pod::To::HTML about that. I know it at least does =Image and some generic <div> construct, but that's all I know.
FROGGS_ lue: kthx 20:06
lizmat r: my $b = <a b b c>.KeyBag; say $b
camelia rakudo-jvm 647a77: OUTPUT«BagHash.new(b(2), a, c)␤Saw 1 call to deprecated code during execution.␤================================================================================␤Method KeyBag (from Any) called at:␤ /tmp/tmpfile, line 1␤Please use 'BagHash' instead.␤---…»
..rakudo-{parrot,moar} 647a77: OUTPUT«BagHash.new(a, b(2), c)␤Saw 1 call to deprecated code during execution.␤================================================================================␤Method KeyBag (from Any) called at:␤ /tmp/tmpfile, line 1␤Please use 'BagHash' inst…»
FROGGS_ I am waiting for TimToady++ for his opinion first
lue it'd have to be something like =begin Css though, not CSS :) 20:08
FROGGS_ k 20:13
lue Actually, if you just want to specify a rule for a stylesheet, some sort of :class<> attribute would work better. 20:14
lue Which AFAICT Pod::To::HTML supports for =pod but nothing else. 20:16
dalek rlito: b9c2191 | (Flavio S. Glock)++ | src5/lib/Perlito5/Grammar/Regex5.pm:
Perlito5 - Perlito5::Grammar::Regex5 more details
20:34
Mouq FROGGS_: Pod-To-HTML::pod2html has a :head attribute that is used to pass style information 20:39
FROGGS_: And yeah, =pod supports a :class<> attribute 20:40
FROGGS_: That's it though
FROGGS_ atm I'd just add css classes to sections/paragraphs, and the external CSS should then format it nicely
lue Mouq: O_o why's it called :head?
FROGGS_ I do not want to embed CSS in Pod, just things that end up being class names 20:41
Mouq lue: as in pod2html $pod, :head(q[<link rel="blabla"/>]), :header(q[<p>An awesome page from my documentation:</p>]) 20:42
lue ah, OK.
Mouq FROGGS_: Note that you can add arbitrary configuration info (like :stability<3>) and have a postprocessor do something with it 20:43
FROGGS_ Mouq: that sounds like the right thing todo :o)
Mouq It only sounds moderately painful :| 20:44
FROGGS_ we'll see
Mouq lue: Are there any blocking problems with pod-vvi that we could move the synopses to Pod6? 20:47
lue Mouq: not that I'm aware of. I don't think we need to update branch pod6ify that way though, but let me check 20:50
lue Mouq: I'm in the process of merging right now, if it turns out to be too much of a headache then running pod-vvi on everything again would be the thing to do. 20:55
Mouq lue++ 20:57
lizmat fg 20:58
oops
lue mergetool + kdiff3 makes this nice to do :) 21:02
lizmat r: sub a (:&b = &[===]) { b.gist.say }; a # expected something like sub infix:<===>(Any $?, Any $?) { #`(Sub+{<anon>}+{Precedence}|4564337744) ... } 21:05
camelia rakudo-{parrot,jvm,moar} 647a77: OUTPUT«True␤»
btyler lizmat: from earlier - cool! didn't know that about "is DEPRECATED" :) 21:06
dalek p/asyncops: 362e7a4 | jnthn++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
Map nqp::timer for MoarVM.
lizmat jnthn++ 21:07
dalek kudo/async: 3814ab3 | jnthn++ | src/core/ThreadPoolScheduler.pm:
Pass an arg for the async handle to nqp::timer.

It's already required on Moar in order to use nqp::timer at all. Will need some JVM work to get this in place also.
21:08
lue
.oO(This merge is showing how S11 has changed a bunch recently. I hope I don't accidentally leave in old-S11 cruft)
Mouq r: sub a (:&b = &[===]) { &b.gist.say }; a # FTFY 21:11
camelia rakudo-jvm 647a77: OUTPUT«sub infix:<===>(Any $?, Any $?) { #`(Sub+{<anon>}+{Precedence}|1173705505) ... }␤»
..rakudo-moar 647a77: OUTPUT«sub infix:<===>(Any $?, Any $?) { #`(Sub+{<anon>}+{Precedence}|140599306857920) ... }␤»
..rakudo-parrot 647a77: OUTPUT«sub infix:<===>(Any $?, Any $?) { #`(Sub+{<anon>}+{Precedence}|7813026685060425491) ... }␤»
lizmat Mouq: do you have an explanation for the difference? 21:16
Mouq lizmat: b vs &b. b calls &b() 21:18
lizmat ah, duh :-) 21:20
dalek kudo/nom: 22fbedc | (Elizabeth Mattijsen)++ | src/core/Supply (2 files):
Implement Supply.squish

Although this does not seem to work without :with parameter: somehow the default &[===] does *not* get set. Giving that up for now.
21:29
ast: a902f51 | (Elizabeth Mattijsen)++ | S17-concurrency/supply.t:
Tests for Supply.squish
rl6-roast-data: 5b1b6a5 | coke++ | bin/rakudo. (3 files):
standardize ulimit for rakudo
rl6-roast-data: d04eb61 | coke++ | bin/ (2 files):
no longer need a separate roast dir
lizmat on that note: enough done for today, good *, #perl6! 21:30
FROGGS_ gnight lizmat
Mouq night lizmat++ 21:31
[Coke] ~~
jnthn 'night, lizmat++ 21:37
[Coke] rakudobrew probably shouldn't be pushing -gen-moar=master, but relying on the last known good version from rakudo. 21:38
(didn't actually broke a few weeks ago, yes?)
tadzik ah, yes
fixed 21:39
[Coke]++
[Coke] tadzik: rakudobrew list with nothing installed gives you a p5 error. 21:41
tadzik oh :)
on it 21:42
[Coke] rehash gives many more.
tadzik [Coke]: no it doesn't :)
git pull?
rehash does, yes
[Coke] killed a moar build so I could get your latest rakudobrew fix. now rakudobrew build moar dies with an error in the build (no clean target) 21:43
make: *** No rule to make target `m-clean', needed by `clean'. Stop.
(I'll just remove moar-HEAD for now)
tadzik: 'list' is still dying for me, tw. 21:44
tadzik (╯‵Д′)╯彡┻━┻
the makefiles and clean things are such a mess
[Coke]: can you show me? I can't reproduce it
[Coke] $ rakudobrew list 21:45
Use of uninitialized value $cur in string eq at /Users/willcoleda/.rakudobrew/bin/rakudobrew line 33. moar-HEAD
I don't think you pushed
last commit is "arglebargle" 21:46
tadzik nope
not yet
[Coke] btw, tadzik++ for doing this. I am now throwing away my ugly shell script that does something like this. 21:47
tadzik :)
[Coke] (and nowhere near as well. :)
tadzik [Coke]: pushed now
lue I hate how committing a merge assumes you want to go on if you back out of the message-writing step, unlike *every other commit I ever make*. (╯‵Д′)╯彡┻━┻ 21:48
[Coke] yes. 21:50
I was bit by that doing some git-svn surgery yesterday!
hurm. the list is now already showing moar-HEAD despite the fact it's not done building yet. :) 21:51
lue Fortunately git commit --amend lets me fix it.
( I seriously wonder who on the git team thought such inconsistent behavior was a good thing :/ )
tadzik hehe
[Coke] arglebargle 21:53
moar build still fails on osx with write error - fine when I'm doing it myself, redoing 'make' fixes it. not with rakudobrew...
FROGGS_ my bet is that it fails when it is invoked as a subprocess that redirects stdout/stderr 21:55
or so
dalek Heuristic branch merge: pushed 71 commits to specs/pod6ify by lue
tadzik [Coke]: ah, that's probably because of realclean :/ 21:56
well, you can go into the dir and 'make'
dalek rl6-roast-data: 9ab21f8 | coke++ | / (6 files):
today (automated commit)
21:57
[Coke] 'make -d' is -segfaulting. 21:59
timotimo the lead moarvm has is getting bigger and bigger o_O 22:00
lue thinks he should probably merge into pod6ify a tiny bit more often :)
timotimo someone™ should port the unicode database to java
FROGGS_ hides 22:01
tadzik hmm
lue The Oracle's a tough one to trick though; he's an, uh, oracle.
timotimo it has the weird thing with 16 bits going on
lue I blame UCS-2 for that :) 22:02
[Coke] googling for bugs in 'make' is not easy/ :P 22:10
tadzik hah
[Coke] has to head out. laters. 22:11
tadzik++ again.
lue r: my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/; say $_<foo> for $/; # I assume there's a reason this doesn't work anymore? 22:34
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«(Any)␤»
lue r: my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/; say $_<foo> for $<bar>; # *this* is the problem 22:37
camelia rakudo-moar 22fbed: OUTPUT«===SORRY!===␤postcircumfix:<{ }> not defined for type Array␤»
..rakudo-jvm 22fbed: OUTPUT«postcircumfix:<{ }> not defined for type Array␤ in method gist at gen/jvm/CORE.setting:12585␤ in sub say at gen/jvm/CORE.setting:13498␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 22fbed: OUTPUT«postcircumfix:<{ }> not defined for type Array␤ in method gist at gen/parrot/CORE.setting:12606␤ in method gist at gen/parrot/CORE.setting:1056␤ in sub say at gen/parrot/CORE.setting:13540␤ in block at /tmp/tmpfile:1␤␤»
Mouq r: my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/; say $_<foo> for @<bar>; 22:39
:/
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«(Any)␤»
Mouq r: my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/; say $_»<foo> for @<bar>;
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«(Any)␤»
Mouq r: my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/; say $_ for @<bar>; 22:40
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«「ABC」␤ 0 => 「A」␤ foo => 「A」␤ 0 => 「B」␤ foo => 「B」␤ 0 => 「C」␤ foo => 「C」␤␤»
lue r: my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/; say $<bar>[0]<foo>
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«(Any)␤»
lue r: my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/; say $<bar>[0][0]<foo>
camelia rakudo-moar 22fbed: OUTPUT«===SORRY!===␤postcircumfix:<{ }> not defined for type Array␤»
..rakudo-jvm 22fbed: OUTPUT«postcircumfix:<{ }> not defined for type Array␤ in method gist at gen/jvm/CORE.setting:12585␤ in sub say at gen/jvm/CORE.setting:13498␤ in block at /tmp/tmpfile:1␤␤»
..rakudo-parrot 22fbed: OUTPUT«postcircumfix:<{ }> not defined for type Array␤ in method gist at gen/parrot/CORE.setting:12606␤ in method gist at gen/parrot/CORE.setting:1056␤ in sub say at gen/parrot/CORE.setting:13540␤ in block at /tmp/tmpfile:1␤␤»
lue r: my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/; say $<bar>[0][0][0]<foo>
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«「A」␤␤»
lue I refuse to believe two extra [0]'s is even close to correct.
Mouq And it failing like it does with $<bar>[0][0]<foo> is definitely wrong 22:41
lue r: my regex foo { \N }; my regex bar { (<.foo>)+ }; "ABC" ~~ /<bar>+/; say $<bar>[0][0][0] 22:42
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«「A」␤␤»
lue r: my regex bar { (\N)+ }; "ABC" ~~ /<bar>+/; say $<bar>[0][0][0] 22:43
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«「A」␤␤»
lue r: "ABC" ~~ /(\N)+/; say $0; say $0[0]; say $0[0][0]; # here you only need two subscripts (the implicit one in $0 counted)
camelia rakudo-{parrot,jvm,moar} 22fbed: OUTPUT«「A」␤ 「B」␤ 「C」␤␤「A」␤␤(Any)␤»
lue Nice to know it's not pod_vvi's fault itself is broken though :) 22:45
Mouq lue: See the difference between $/ in `my regex foo { \N }; my regex bar { (<foo>)+ }; "ABC" ~~ /<bar>+/;` and `"ABC" ~~ /$<bar>=[(<foo=[\N]>)+]+/;` 22:47
Oh, nvm 22:48
lue So, when a named rule of any kind (including $<foo>= , which I just checked locally) is involved, you need to subscript thrice, but if there is no name (just (\N)+ for instance), then it takes two. 22:51
The thrice case includes (<.foo>)+, even though its eqv. to (\N)+ 22:52
O_O :$!list(Parcel<7>(:$!storage(BOOTArray<8>(▶Array<9>(
Parcel of BOOTArray of Array ‽ 22:53
(that's ($<foo>=(\N))+ ) 22:54
lue will soon paste a gist showing off what all the DUMPs look like 22:57
lue Gah, I know where the third layer comes in now; it's from the + on <bar> (which is understandable) 23:11
lue Here's the script to test this with: gist.github.com/lue/11068143 23:15
I think I just found it. Am I right in seeing that Rakudo currently does $<current_rule>[positional capture construct][construct capture no] instead of $<current_rule>[rule-global capture no] 23:20
O_o I'm reading S05 and since when were $0 and $1 specced to hold an array of the construct's matches? 23:35
lue Bisecting rakudo doesn't show me different results when I expect, which means I somehow managed to have code back in February that worked but doesn't now. Grah. 23:39
.ask TimToady I thought subpattern captures used to just fill up the array ( (\N)+ would fill $0, $1, $2, etc. ), but now code of mine that assumes this (which worked in February) is broken and S05 has apparently been against this notion the whole time. I don't suppose you're to ask as to why this is? 23:49
yoleaux lue: I'll pass your message to TimToady.
lue .tell TimToady my discovery starts here, for reference: irclog.perlgeek.de/perl6/2014-04-18#i_8609501 23:51
yoleaux lue: I'll pass your message to TimToady.