»ö« 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» | ||
00:40
gdey left
00:42
raiph left
00:56
adu left
01:08
klapperl_ joined
01:10
hoverboard joined
01:11
klapperl left
01:12
BenGoldberg left
01:13
btyler joined,
BenGoldberg joined
01:31
hoverboard left
01:32
FROGGS_ joined
01:33
dragon_d left
01:35
gdey joined,
Sqirrel_ left
01:36
FROGGS left
01:39
dayangkun_ left
02:03
telex left
02:04
telex joined
02:10
virtualsue joined
02:31
dragon_d joined,
xragnar_ joined,
xragnar left,
xragnar_ is now known as xragnar
02:38
dayangkun joined
02:51
dayangkun left
03:01
gdey left
03:04
gdey joined
03:08
dayangkun joined
03:09
ggoebel111111 joined,
dayangkun left
03:10
labster left
03:12
plobsing joined
03:24
zz_nhayashi is now known as nhayashi
03:25
bjz left,
gdey left
03:26
xenoterracide_ left
03:31
bjz joined
03:35
daniel-s_ joined
03:37
BenGoldberg left
03:40
daniel-s_ left
03:44
gtodd left,
Deepak joined
03:45
adu joined
|
|||
adu | Mouq++ | 03:49 | |
03:49
virtualsue left
03:50
Alina-malina left
03:58
raiph joined
04:00
labster joined
04:01
hoverboard joined
04:05
Deepak left
04:06
dayangkun joined
04:08
hoverboard left
04:11
anaeem1_ joined
|
|||
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) | ||
04:22
btyler left
|
|||
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/tmpfileUndeclared routine: lol used at line 1. Did you mean 'log'?» | ||
niecza v24-109-g48a8de3: OUTPUT«===SORRY!===Undeclared routine: 'lol' used at line 1Unhandled 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? | |||
04:24
hoverboard joined
|
|||
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) | |||
04:26
gdey joined
|
|||
Mouq | r: =begin code :allow<B>B< a bc d ef g>=end code | 04:26 | |
camelia | ( no output ) | ||
Mouq | r: =begin code :allow<B>B< a b=parac d ef 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 | |
04:31
kaare__ joined
|
|||
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 | ||
05:11
raiph left
|
|||
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/…» | |||
05:14
lue joined
|
|||
lue | ♘ #perl6 o/ | 05:14 | |
Mouq | 'night lue! sleep well | 05:15 | |
05:20
dragon_d left
05:26
gdey left
05:38
dayangkun left
05:50
hoverboard left
05:54
molaf joined
05:57
Sqirrel joined
|
|||
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 | ||
06:18
denis_boyun_ joined
06:19
grep0r joined
06:20
bjz left,
bjz joined
06:22
kaleem joined
|
|||
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 ó.ò | |||
06:43
Alina-malina joined
06:49
SunilJoshi joined
|
|||
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? | |||
07:03
kurahaupo left
07:04
dayangkun joined
07:06
bjz left,
thou left
|
|||
FROGGS_ | masak: I also had a hanging test about S17... I'll check if it is that one after breakfast | 07:13 | |
07:15
Ven joined
|
|||
masak | FROGGS_: nice. | 07:18 | |
07:23
Mouq left
07:27
Ven_ joined
07:31
Alina-malina left
07:32
fhelmberger joined,
Alina-malina joined
07:34
Ven left
07:35
rindolf joined
07:36
denis_boyun_ left
07:40
treehug88 left
07:45
Rotwang joined
07:50
bjz joined
07:51
molaf left,
bjz_ joined
07:53
darutoko joined
07:55
bjz left
|
|||
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 | |||
08:11
snarkyboojum joined
|
|||
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 | |||
08:17
kaare__ left
|
|||
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 | ||
08:33
dmol joined
08:39
kurahaupo joined
08:48
snarkyboojum left
08:51
Alula_ left,
adu left,
Alula_ joined
09:02
camelia joined
|
|||
moritz | m: say 42 | 09:03 | |
09:03
ChanServ sets mode: +v camelia
|
|||
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 | |
09:19
kivutar joined
|
|||
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) | |||
09:35
Alina-malina left
|
|||
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 | |
09:38
Alina-malina joined
|
|||
Woodi | hallo :) | 09:39 | |
masak++ # R*++ | |||
btw. anyone remembers that link to Rakudo Easter Eggs page ? | 09:40 | ||
09:46
Rotwang left
09:49
kurahaupo left
10:03
SunilJoshi left
10:04
nhayashi is now known as zz_nhayashi
10:09
woosley left
10:12
dayangkun left
10:24
Ven_ left
10:31
denis_boyun joined
10:40
cibs joined
10:46
kurahaupo joined
10:55
havenwood left
|
|||
timotimo | happy ishtar, friends | 10:56 | |
woolfy1 | Have a nice weekend | 11:10 | |
11:11
kurahaupo_mobile joined
11:12
kurahaupo left,
nebuchadnezzar left
|
|||
jnthn | o/ | 11:15 | |
11:15
kurahaupo_mobile left
11:18
labster left
11:19
nebuchadnezzar joined
11:21
rindolf left
|
|||
JimmyZ | \o | 11:39 | |
11:43
beastd joined
11:47
zakharyas joined
|
|||
moritz | Woodi: rt.perl.org/ # rakudo easter eggs documented here | 11:48 | |
Woodi | oo, Bitcard, look nice :) | 11:50 | |
jnthn++ also ! | 11:51 | ||
11:52
Ven joined
|
|||
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/9Bc6tKm0ZxUnable 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 | ||
12:10
xenoterracide_ joined
|
|||
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 failedFAILED 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 | |
12:29
treehug88 joined
12:32
anaeem1_ left,
anaeem1__ joined
|
|||
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/tmpfileUndeclared 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 | ||
12:46
anaeem1__ left
12:47
anaeem1 joined
|
|||
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 | |
12:50
treehug88 left
12:51
treehug88 joined,
anaeem1 left
12:52
treehug88 left,
SamuraiJack joined
12:54
xenoterracide_ is now known as xenoterracide
|
|||
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 | ||
12:58
mtj_ joined
|
|||
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/3KPyYnh5wiTwo terms in a rowat /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 | ||
13:03
LLamaRider joined
|
|||
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/9KT04iri12Two terms in a rowat /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 :) | |||
13:11
eternaleye left
13:13
xenoterracide left
|
|||
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 | ||
13:16
eternaleye joined
|
|||
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 | ||
13:30
fhelmberger left
|
|||
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. | |||
13:46
bluescreen10 joined
|
|||
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 | |
13:50
btyler joined
|
|||
jnthn | lizmat: There's already a .throw? | 13:53 | |
lizmat | jnthn: another datapoint: changed signature from "sub ($val) {...}" to -> ($val) {...}, gives: | ||
13:53
anaeem1_ joined
|
|||
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 | |
13:55
FROGGS[mobile] joined
|
|||
jnthn | The "in sub-signature" was probably the best clue :) | 13:55 | |
lizmat | There's an Exception.throw, if that is what you meant | ||
13:56
kaleem left
|
|||
lizmat | changing it to -> $var gives the same error :-) | 13:56 | |
13:59
anaeem1_ left
14:00
anaeem1 joined
14:01
thou joined
14:04
treehug88 joined,
anaeem1 left
|
|||
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 | ||
14:12
Ven left
|
|||
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. | ||
14:33
anaeem1 joined
|
|||
lizmat | cool! | 14:34 | |
jnthn | (And breaks Moar build for now, which is why it's in a branch.) | ||
14:40
zakharyas left
|
|||
dalek | kudo/nom: 3922904 | (Elizabeth Mattijsen)++ | src/core/SupplyOperations.pm: Remove unneeded lexicals |
14:41 | |
14:42
anaeem1 left,
anaeem1 joined
14:45
raiph joined
14:46
anaeem1 left
14:54
guru joined,
guru is now known as ajr_
15:05
hoelzro joined
|
|||
hoelzro | ahoy #perl6! | 15:05 | |
vendethiel | o/ hoelzro | 15:06 | |
15:08
kaare__ joined
15:09
denis_boyun left
|
|||
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. | ||
15:31
rindolf joined
|
|||
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 | |
15:57
kaare__ is now known as kaare_
|
|||
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 | |||
16:18
obra_ is now known as obra,
dwarring left
16:19
raiph left
|
|||
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 | |||
16:45
xenoterracide_ joined
16:48
havenwood joined
16:50
Mouq joined
|
|||
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 | |
16:57
Mouq left
16:58
xenoterracide_ left,
xenoterracide__ joined
16:59
woolfy1 left,
woolfy joined
|
|||
timotimo | that's right. though, if moar was 10x faster than rakudo, it'd still be visible :P | 17:08 | |
17:08
Mouq joined
|
|||
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 | |
17:16
anaeem1 joined,
rindolf left
|
|||
FROGGS_ | Mouq: see gist.github.com/FROGGS/0ea5537eb675588baaa2 | 17:17 | |
Mouq | FROGGS_: I see :| Thanks! | 17:19 | |
17:22
arturo joined
|
|||
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 | |
17:28
anaeem1 left
17:29
anaeem1 joined
|
|||
lizmat | then fork rakudo and create pull requests, right? | 17:33 | |
jnthn | Right. :) | 17:34 | |
17:34
anaeem1 left
|
|||
arturo | jhthn: Thanks! Is there a developer guide or "getting started" document? | 17:34 | |
17:35
xenoterracide__ left,
xinming joined
|
|||
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. | |||
17:38
xinming__ left
|
|||
timotimo | oh | 17:38 | |
17:38
xenoterracide__ joined
|
|||
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 :) | ||
17:40
denis_boyun joined,
rindolf joined
|
|||
timotimo | aye | 17:41 | |
17:43
xenoterracide__ left
|
|||
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* | |||
17:49
vincent21 joined
|
|||
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 | |||
17:59
raiph joined
|
|||
raiph | timotimo: questhub.io/realm/perl/quest/53516...ef19000022 | 17:59 | |
18:00
denis_boyun left
18:04
Rotwang joined
18:10
SamuraiJack left
18:15
kurahaupo joined
|
|||
timotimo | mhm mhm | 18:18 | |
18:19
vincent21 left
|
|||
lizmat | guten Appetit! | 18:23 | |
18:23
ldthien0 left
18:30
treehug88 left
|
|||
cognominal | G grand a petit | 18:33 | |
18:33
treehug88 joined,
treehug88 left
18:34
treehug88 joined
|
|||
vendethiel | what | 18:39 | |
arturo | Mouq: thanks, thats a good idea. I'll keep an eye on those | ||
18:42
ajr_ left,
vincent21 joined
|
|||
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 | |
18:55
vincent21 left
|
|||
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 |
||
19:09
thou left
|
|||
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 | |
19:14
Rotwang left
|
|||
lizmat | T minus 5 | 19:20 | |
nwc10 | T-5 minutes: www.spacex.com/webcast/ | ||
19:22
darutoko left
|
|||
lizmat | T minus 30 secs | 19:25 | |
19:32
rindolf left
19:34
ssutch joined
19:35
labster joined
19:38
kivutar left
|
|||
dalek | rlito: 3eecee9 | (Flavio S. Glock)++ | src5/lib/Perlito5/Grammar/Regex5.pm: Perlito5 - Perlito5::Grammar::Regex5 more details |
19:39 | |
19:40
kivutar joined
19:43
kaare_ left
19:45
gaussblurinc_ joined
|
|||
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«fooSaw 1 call to deprecated code during execution.================================================================================Sub a (from GLOBAL) called at: /tmp/tmpfile, line 1Please 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«fooSaw 1 call to deprecated code during execution.================================================================================Sub a (from GLOBAL) called at: /tmp/tmpfile, line 1Please 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/tmpfileAttribute $!foo not declared in class fooat /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«fooSaw 1 call to deprecated code during execution.================================================================================Sub a (from GLOBAL) called at: /tmp/tmpfile, line 1Please 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«FooSaw 1 call to deprecated code during execution.================================================================================Method ucfirst (from Cool) called at: /tmp/tmpfile, line 1Please 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/tmpfileUndeclared 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. | ||
20:06
gaussblurinc_ left
|
|||
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 1Please 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 1Please use 'BagHash' inst…» | |||
FROGGS_ | I am waiting for TimToady++ for his opinion first | ||
20:08
raiph left
|
|||
lue | it'd have to be something like =begin Css though, not CSS :) | 20:08 | |
20:10
telex left
20:12
telex joined
|
|||
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 | |
20:15
gaussblurinc_ joined
|
|||
lue | Which AFAICT Pod::To::HTML supports for =pod but nothing else. | 20:16 | |
20:32
gaussblurinc_ left
20:33
vendethiel left
|
|||
dalek | rlito: b9c2191 | (Flavio S. Glock)++ | src5/lib/Perlito5/Grammar/Regex5.pm: Perlito5 - Perlito5::Grammar::Regex5 more details |
20:34 | |
20:37
vendethiel joined
|
|||
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 | |
20:50
bluescreen10 left,
kivutar left
20:52
kivutar joined
|
|||
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 | |
20:57
bluescreen10 joined
|
|||
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) ... }» | |||
21:12
btyler left
|
|||
lizmat | Mouq: do you have an explanation for the difference? | 21:16 | |
21:17
kivutar left
|
|||
Mouq | lizmat: b vs &b. b calls &b() | 21:18 | |
21:18
BenGoldberg joined
|
|||
lizmat | ah, duh :-) | 21:20 | |
21:24
raiph joined
|
|||
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] | ~~ | ||
21:32
thou joined
|
|||
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 | |
21:49
ggoebel111111 left,
Mouq left,
ggoebel111111 joined
|
|||
[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... | |||
21:54
colomon left
|
|||
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' | |||
21:56
pippo joined
|
|||
dalek | rl6-roast-data: 9ab21f8 | coke++ | / (6 files): today (automated commit) |
21:57 | |
[Coke] | 'make -d' is -segfaulting. | 21:59 | |
21:59
colomon joined
|
|||
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 | ||
22:01
gaussblurinc_ joined
|
|||
lue | I blame UCS-2 for that :) | 22:02 | |
22:03
treehug88 left
22:05
dmol left
22:10
colomon left
|
|||
[Coke] | googling for bugs in 'make' is not easy/ :P | 22:10 | |
tadzik | hah | ||
[Coke] has to head out. laters. | 22:11 | ||
tadzik++ again. | |||
22:17
gaussblurinc_ left
22:20
adu joined
22:26
FROGGS[mobile] left
22:27
Mouq joined
22:30
xenoterracide__ joined
|
|||
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. | ||
22:41
arturo left
|
|||
Mouq | And it failing like it does with $<bar>[0][0]<foo> is definitely wrong | 22:41 | |
22:41
kurahaupo left
|
|||
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 | ||
23:01
thou left
23:11
pippo left
|
|||
lue | Gah, I know where the third layer comes in now; it's from the + on <bar> (which is understandable) | 23:11 | |
23:12
Mouq left
23:13
beastd left
|
|||
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 | ||
23:37
kurahaupo joined
|
|||
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. |