»ö« 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.
dalek kudo/moar-support: a2521ac | jnthn++ | src/ (2 files):
First pass at p6bindassert.
00:06
00:09 berekuk left 00:11 mtk left 00:17 berekuk joined 00:23 mtk joined 00:30 ssutch joined, dmol left 00:34 ssutch left
dalek p: b766b07 | jnthn++ | src/vm/moar/QAST/QAST (2 files):
Mechanism for auto-decont, and start using it.

Will likely have to mark some more ops up as needed, but this covers the cases Rakudo setting compilation immediately hits.
00:44
kudo/moar-support: 641fa0f | jnthn++ | src/core/traits.pm:
Remove debugging code.
00:47
kudo/moar-support: d525252 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
Implement type captures.
00:49 ssutch joined, ssutch left 00:53 ssutch joined 01:02 BenGoldberg joined 01:05 Rotwang left
dalek kudo/moar-support: 5318273 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
Most of optional positional arg handling.
01:06
01:15 PacoAir left
dalek kudo/moar-support: 6b33011 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
Fix a couple of binder thinkos.
01:16
01:20 wrp6 left, cibs left, wrp6 joined 01:21 cibs joined 01:23 bonsaikitten left 01:25 ssutch left 01:27 bonsaikitten joined
dalek kudo/moar-support: 000c8fc | jnthn++ | src/vm/moar/ops/perl6_ops.c:
Stub p6capturelex out for now.

Needs a re-visit at some point.
01:28
01:33 xenoterracide left, xenoterracide joined 01:35 bonsaikitten left, bonsaikitten joined, berekuk left 01:49 xenoterracide left, xenoterracide joined 01:50 kurahaupo left 02:06 tgt left 02:08 xenoterracide left 02:16 raiph joined 02:23 cooper left 02:40 xinming left 02:41 xinming joined 02:55 langdon_ left 03:07 xenoterracide joined 03:08 MikeFair_ left
tadzik I think our new Makefiles are confused 03:11
gist.github.com/tadzik/7508585 03:12
neither of those specifies what realclean is
03:15 WABIHIP joined
moritz puts it onto his mental TODO list, but tries that "sleep" thingy first 03:29
tadzik we're 8 timezones away, and both sleepy. Curious :) 03:30
03:31 raiph left 03:45 MikeFair_ joined, xenoterracide left, xenoterracide_ joined 03:52 xenoterracide_ left, ssutch joined 03:53 xinming left 03:54 cooper_ joined 04:04 ssutch left 04:07 kurahaupo joined 04:14 preflex_ joined, ChanServ sets mode: +v preflex_ 04:15 preflex left, preflex_ is now known as preflex 04:29 cooper_ left 04:47 btyler left 04:54 cooper_ joined
BenGoldberg n: say "\x[10ffff]".succ 04:58
camelia niecza v24-98-g473bd20: OUTPUT«WTF␤»
BenGoldberg r: say "\x[10ffff]".succ 04:59
camelia rakudo-parrot 5d2cbe: OUTPUT«===SORRY!===␤Invalid character for UTF-8 encoding␤␤»
..rakudo-jvm 5d2cbe: OUTPUT«===SORRY!===␤Invalid code-point U+10FFFF␤»
BenGoldberg r: say "\x[10ffff]"
camelia rakudo-parrot 5d2cbe: OUTPUT«===SORRY!===␤Invalid character for UTF-8 encoding␤␤»
..rakudo-jvm 5d2cbe: OUTPUT«===SORRY!===␤Invalid code-point U+10FFFF␤»
BenGoldberg n: say "\x[10ffff]"
camelia niecza v24-98-g473bd20: OUTPUT«\x{10FFFF}␤»
BenGoldberg rn: say "\x[10FFFd]".succ.chars 05:02
camelia rakudo-parrot 5d2cbe: OUTPUT«1␤»
..rakudo-jvm 5d2cbe: OUTPUT«2␤»
..niecza v24-98-g473bd20: OUTPUT«3␤»
BenGoldberg rn: say "\x[10FFFd]".succ.comb 05:07
camelia niecza v24-98-g473bd20: OUTPUT«W T F␤»
..rakudo-jvm 5d2cbe: OUTPUT«java.nio.charset.MalformedInputException: Input length = 1␤ in block at /tmp/gqosBJ4L1z:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤ in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤ in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1196…»
..rakudo-parrot 5d2cbe: OUTPUT«􏿽␤»
05:18 BenGoldberg left 05:23 btyler joined
dalek ecs: 7e64b6c | larry++ | S17-concurrency.pod:
make winner implicitly check a channel's done too

The concept of making a channel have a boolean operator to return the done promise was bad for two reasons: 1) the logic of it was backwards from promise booleans, and 2) making a boolean op return a non-boolean is just a bad idea, and the person who proposed it should be ashamed.
05:25
TimToady (boolean on a promise is still perfectly fine though) 05:26
TimToady-- for proposing that :) 05:28
dalek ecs: 1e5230f | larry++ | S17-concurrency.pod:
clarify why more/done distinction in winner works

more only makes sense on on channels, while done only works on promises, and hence will happily autocoerce a channel to its 'done' promise.
05:38
05:48 xenoterracide_ joined
lue apparently, clearing out all parrot related things in /usr/local magically worked. Must've been some change between 5.9.0-version commits. 05:50
*sigh* nevermind, just me doing the usual simple messups. Stupid parrot... >:( 05:52
dalek ecs: d4ca726 | larry++ | S17-concurrency.pod:
some typos/fossils in combine

make $:v and $:k work as they do in winner
05:53 fridim_ joined
lue OK, the 2013.10 tagged NQP doesn't bail out on me. Is it git blame/bisect/* that lets me find the offending change? 05:55
FROGGS, jnthn, other interested parties: according to git bisect, commit fe517a2d50e719cf949cb1d27daa4ee1bb1538c0 of NQP is where I'm no longer able to use not-gen-parrot NQP. 06:09
06:11 SamuraiJack joined
TimToady r: say <a b>.combinations 06:11
camelia rakudo-jvm 5d2cbe: OUTPUT«No such method 'combinations' for invocant of type 'Parcel'␤ in block at /tmp/gwclTaRYDR:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤ in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤ in any command_eval at gen/jvm/stage2/NQPHLL.nqp:1196…»
..rakudo-parrot 5d2cbe: OUTPUT«No such method 'combinations' for invocant of type 'Parcel'␤ in block at /tmp/3kMfrLW1Na:1␤ in any at /tmp/3kMfrLW1Na:1␤ in any at gen/parrot/stage2/NQPHLL.nqp:1146␤ in any eval at gen/parrot/stage2/NQPHLL.nqp:1133␤ in any evalfiles at …»
TimToady r: say <a b>.list.combinations 06:12
camelia rakudo-jvm 5d2cbe: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in block at /tmp/itBcBO7Zv_:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤ in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤ in any command_eval at gen/jvm/stage2/NQPHLL.nqp:11…»
..rakudo-parrot 5d2cbe: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in method combinations at gen/parrot/CORE.setting:7994␤ in block at /tmp/2V5t_tjvcK:1␤ in any at /tmp/2V5t_tjvcK:1␤ in any at gen/parrot/stage2/NQPHLL.nqp:1146␤ in any eval …»
lue FROOGS, jnthn, o.i.p.: commenting out ASSERT_ARGS(COMPARE) in qrpa.pmc lets me go on, but I don't know the ramifications of doing this (assuming it'll finish compiling.)
TimToady r: say <a b>.list.combinations(0..2) 06:13
camelia rakudo-parrot 5d2cbe, rakudo-jvm 5d2cbe: OUTPUT«a b a b␤»
TimToady r: say <a b>.list.combinations(0..2).perl
camelia rakudo-parrot 5d2cbe, rakudo-jvm 5d2cbe: OUTPUT«((), ("a",), ("b",), ("a", "b")).list␤»
TimToady as list methods, combinations and permutations probably need to be in Any 06:14
r: say <a b>.list.combinations(0..*).perl
camelia rakudo-parrot 5d2cbe, rakudo-jvm 5d2cbe: OUTPUT«((), ("a",), ("b",), ("a", "b")).list␤»
TimToady also needs to default range to that one
TimToady is glad the methods are finally there though 06:16
lue agrees on both improvements 06:17
r: say <a b c>.list.combinations(0..1).perl
camelia rakudo-parrot 5d2cbe, rakudo-jvm 5d2cbe: OUTPUT«((), ("a",), ("b",), ("c",)).list␤»
TimToady r: say <a b c d e f g h>.list.combinations(0..*)[^20].perl 06:18
camelia rakudo-parrot 5d2cbe, rakudo-jvm 5d2cbe: OUTPUT«((), ("a",), ("b",), ("c",), ("d",), ("e",), ("f",), ("g",), ("h",), ("a", "b"), ("a", "c"), ("a", "d"), ("a", "e"), ("a", "f"), ("a", "g"), ("a", "h"), ("b", "c"), ("b", "d"), ("b", "e"), ("b", "f"))␤»
TimToady r: say <a b c d e f g h>.list.combinations(5..*)[^20].perl 06:19
lue so so the argument means "give me $x..$y elem combination lists", correct? (That's the only sensible thing I can see anyhow)
camelia rakudo-parrot 5d2cbe, rakudo-jvm 5d2cbe: OUTPUT«(("a", "b", "c", "d", "e"), ("a", "b", "c", "d", "f"), ("a", "b", "c", "d", "g"), ("a", "b", "c", "d", "h"), ("a", "b", "c", "e", "f"), ("a", "b", "c", "e", "g"), ("a", "b", "c", "e", "h"), ("a", "b", "c", "f", "g"), ("a", "b", "c", "f…»
TimToady yes
looks like we can simplify rosettacode.org/wiki/Subset_sum_problem#Perl_6 now 06:23
though it would appear to not work with the built-in now, perhaps due to a 'nodal' problem 06:30
06:35 jac50 joined 06:36 jac50 is now known as lemOn91
TimToady no, more likely due to .combinations returning parcels rather than arrays 06:40
there's not much point in flattening there...
yeah, requires a .tree (and .lol still doesn't work, sigh), though I believe .combinations is specced to return a list of Array, or equivalent non-flattening object 06:43
so returning list of Parcel is wrongish
06:43 btyler left
lue TimToady: I imagine S09 will/should receive S17's level of attention after S17 is done :) 06:45
TimToady it'll receive more attention when someone starts implementing it :) 06:46
r: <a b c>.list.combinations.lol.perl.say 06:48
camelia rakudo-jvm 5d2cbe: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in block at /tmp/psR41Ij02G:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤ in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1292␤ in any command_eval at gen/jvm/stage2/NQPHLL.nqp:11…»
..rakudo-parrot 5d2cbe: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤ in method combinations at gen/parrot/CORE.setting:7994␤ in block at /tmp/KKVI9ndIGc:1␤ in any at /tmp/KKVI9ndIGc:1␤ in any at gen/parrot/stage2/NQPHLL.nqp:1146␤ in any eval …»
TimToady r: <a b c>.list.combinations(*).lol.perl.say
camelia rakudo-parrot 5d2cbe: OUTPUT«Cannot call 'combinations'; none of these signatures match:␤:(List : Int $of, Mu *%_)␤:(List : Range $of = { ... }, Mu *%_)␤ in any at gen/parrot/BOOTSTRAP.nqp:1218␤ in any at gen/parrot/BOOTSTRAP.nqp:1209␤ in method combinations at gen/pa…»
..rakudo-jvm 5d2cbe: OUTPUT«Cannot call 'combinations'; none of these signatures match:␤:(List : Int $of, Mu *%_)␤:(List : Range $of = { ... }, Mu *%_)␤ in any at gen/jvm/BOOTSTRAP.nqp:1201␤ in block at /tmp/gxt_Fn466O:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1086␤…»
TimToady r: <a b c>.list.combinations(0..*).lol.perl.say
camelia rakudo-parrot 5d2cbe, rakudo-jvm 5d2cbe: OUTPUT«LoL.new(ListIter.new())␤»
TimToady sigh
06:50 xenoterracide_ left
TimToady r: <a b c>.list.combinations(2).lol.[1].perl.say 06:51
camelia rakudo-parrot 5d2cbe, rakudo-jvm 5d2cbe: OUTPUT«Any␤»
07:15 xenoterracide_ joined 07:25 PZt left 07:38 lemOn91 left 07:50 PZt joined 07:51 SamuraiJack_ joined 07:53 SamuraiJack left 08:14 nnunley left
emma hi guys. Do any of you ever make Irssi scripts? 08:16
FROGGS lue: that makes of course sense... 08:21
lue: I will care about today 08:23
08:26 thou left 08:31 SamuraiJack__ joined 08:33 SamuraiJack_ left
dalek p: d7adc6c | (Tobias Leich)++ | src/vm/parrot/pmc/qrpa.pmc:
protect ASSERT_ARGS

These are for debugging only as it seems.
08:49
kudo/nom: 03c08f0 | (Tobias Leich)++ | tools/build/NQP_REVISION:
bump nqp revision, to get ASSERT_ARGS fix
08:51
FROGGS lue: that should fix it
FROGGS ticks TODO item 1 08:53
dalek kudo/moar-support: 5d2cbe4 | moritz++ | src/core/Backtrace.pm:
Fix classification of errors as coming from the setting

the build system refactor changed the file name of the generated CORE.setting file
08:56
kudo/moar-support: 03c08f0 | (Tobias Leich)++ | tools/build/NQP_REVISION:
bump nqp revision, to get ASSERT_ARGS fix
kudo/moar-support: 5f8369c | (Tobias Leich)++ | / (2 files):
Merge branch 'nom' of github.com:rakudo/rakudo into moar-support
08:58 Rotwang joined 09:31 kivutar joined
dalek kudo/moar-support: 632b44b | (Tobias Leich)++ | Configure.pl:
display nqp+backend version info
09:51
FROGGS Using /home/froggs/dev/nqp/install/bin/nqp-p (version 2013.10-246-gd7adc6c / Parrot 5.9.0).
Using /home/froggs/dev/rakudo/../nqp/install/bin/nqp-j (version 2013.10-246-gd7adc6c / OpenJDK 1.7.0_25).
Using /home/froggs/dev/rakudo/../nqp/install/bin/nqp-m (version 2013.10-246-gd7adc6c / MoarVM 2013.10-138-g9e56dc1).
09:56 fridim_ left
dalek kudo/moar-support: 5641202 | (Tobias Leich)++ | tools/build/Makefile-Moar.in:
rules like m-install should only care about moar
09:56
moritz should realclean delete config.status too? 10:02
FROGGS I dunno 10:03
dalek kudo/moar-support: adfa55e | (Tobias Leich)++ | tools/build/Makefile-Moar.in:
add dynext/*.[o|so] files to rule m-clean
10:04
FROGGS moritz: are you adding the rule `realclean` or shall I? 10:05
moritz FROGGS: I'm doing it
FROGGS k
I thought so :o)
btw, we should either add a \n to $outfile in fill_template_file or add another newline to every Makefile.in 10:07
because slurp seems to remove one
and the generated makefile looks weird at "j-testclean:"
k, all TODO items ticked :o) 10:08
10:13 bbkr1 joined
moritz I have a local patch for realclean, but I need to finish rebuilding NQP to be able to test it 10:14
dalek kudo/moar-support: 193eda0 | moritz++ | tools/build/Makefile- (4 files):
clean up realclean
10:15
FROGGS moritz: do you still have problems to build rakudo@moar? 10:17
moritz FROGGS: haven't tried yet 10:18
FROGGS: same problem as before 10:21
FROGGS moritz: and you made realclean in moarvm? 10:23
dalek kudo/moar-support: ab3f1a8 | moritz++ | tools/lib/NQP/Configure.pm:
[Configure] add source comments to generated Makefile
FROGGS ohh, that is better 10:24
moritz not yet, trying again with realclean
FROGGS and I fetch a fresh rakudo, and try a --gen-nqp --gen-moar 10:25
timotimo ohai o/ 10:42
FROGGS o/ 10:44
10:44 avar left 10:45 kivutar left
timotimo GlitchMr: your $a (+=) 1 is missing the important "cas" part on the right hand side 10:48
10:51 avar joined, avar left, avar joined 10:55 berekuk joined 11:01 kivutar joined
dalek p: 596687d | (Tobias Leich)++ | tools/build/MOAR_REVISION:
bump moar revision
11:03
kudo/moar-support: 4451f60 | (Tobias Leich)++ | tools/build/NQP_REVISION:
bump nqp rev which bumps moar rev
11:05
itz Error while compiling op p6captureouters: No registered operation handler for 'p6captureouters' at gen/moar/stage2/QAST.nqp:4047 (/home/steve/sandbox/m0ar/MoarVM/languages/nqp/lib/QAST.moarvm:frame_name_1120:52) 11:24
thats with moarvm of 20 min or so old and moar-support 11:25
timotimo yeah, could be 11:26
you could stub it if you want to :P 11:27
itz I see moar seems to host nqp now how near on rakudo on moar? 11:32
s/near on/near is
timotimo jnthn is getting to like ~700 of the CORE.setting 11:33
line*
11:38 jaffa4 joined 11:41 dmol joined
jaffa4 hi all 11:45
timotimo hi
FROGGS itz: the error you get is the thing where we are now, yes
itz ok thanks just checking I hadn;t messed up! 11:46
FROGGS :o)
timotimo yay, i get further 11:47
FROGGS \o/ 11:49
11:49 telex left
timotimo Error while compiling op p6captureouters: No registered operation handler for 'p6captureouters' 11:50
\o/
FROGGS yeah baby :o)
11:52 telex joined 11:55 tgt joined
timotimo juggles lots of prefixes 12:14
i should flatten out this hierarchy
12:20 diakopter left, diakopter joined, denisboyun joined 12:24 mtj_- left
moritz one prefix to rule them all! 12:24
12:24 mtj_ joined 12:37 denisboyun left
jaffa4 Lexical '$*LINEPOSCACHE' not found in dynamic scope 12:37
12:48 _ilbot left 12:51 _ilbot joined
FROGGS jaffa4: just declare it before calling .parse 12:58
jaffa4 ok. htanks 13:01
dalek kudo/moar-support: 0a4172e | (Tobias Leich)++ | / (2 files):
allow --gen-moar to be passed to nqp
kudo/moar-support: 70290ce | (Tobias Leich)++ | / (2 files):
--gen-moar implies --backends=moar, moritz++
13:11
FROGGS moritz: ^^
13:22 beastd joined 13:23 SamuraiJack__ left 13:26 darutoko joined 13:27 moritz left, moritz joined 13:36 PacoAir joined 13:37 PacoAir left 13:38 denis_boyun joined 13:50 PacoAir joined 14:12 SamuraiJack__ joined 14:15 denis_boyun left, denis_boyun joined 14:21 denis_boyun_ joined 14:22 denis_boyun left, pecastro_ joined 14:24 pecastro left
dalek kudo/moar-support: 7bf18a5 | jnthn++ | src/vm/moar/ (2 files):
An attempt at p6captureouters.
14:26
osystem: fd4e091 | jaffa4++ | META.list:
Update META.list
14:27
14:32 woolfy left, woolfy1 joined
dalek p: ce7482c | jnthn++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
Scatter more auto-decont.
14:41
kudo/moar-support: ab46918 | (Tobias Leich)++ | Configure.pl:
--gen-moar implies --gen-nqp
14:41 woolfy1 left 14:42 woolfy joined, lizmat_ joined 14:43 FROGGS[mobile] joined 14:44 lizmat left
colomon no chatter this morning, just commits, eh? 14:44
jnthn Shhh! :P 14:45
14:49 darutoko- joined 14:51 nnunley joined 14:52 darutoko left 15:04 rindolf joined 15:21 Woodi left, ajr joined, Woodi joined 15:22 ajr is now known as Guest90914, Guest90914 is now known as ajr_ 15:32 BenGoldberg joined 15:36 Woodi left, Woodi joined
BenGoldberg rn: .say, .chars.say for "\x[10FFFD]", "\x[10FFFD]".succ; 15:38
camelia niecza v24-98-g473bd20: OUTPUT«􏿽␤2␤WTF␤3␤»
..rakudo-parrot 03c08f: OUTPUT«􏿽␤1␤􏿽␤1␤»
..rakudo-jvm 03c08f: OUTPUT«􏿽␤2␤􏿽␤2␤»
BenGoldberg rn: .comb.say for "\x[10FFFD]", "\x[10FFFD]".succ; 15:39
camelia rakudo-parrot 03c08f: OUTPUT«􏿽␤􏿽␤»
..niecza v24-98-g473bd20: OUTPUT«􏿽␤W T F␤»
..rakudo-jvm 03c08f: OUTPUT«java.nio.charset.MalformedInputException: Input length = 1␤ in block at gen/jvm/CORE.setting:7258␤ in block at gen/jvm/CORE.setting:7122␤ in method gimme at gen/jvm/CORE.setting:7540␤ in block at /tmp/NSku78nOvd:1␤ in any eval at gen/jvm/s…»
BenGoldberg A little consistancy would be nice :P 15:40
dalek kudo/moar-support: 7d98d41 | jnthn++ | src/vm/moar/ (2 files):
p6box_[ins] for Moar.
15:42
kudo/moar-support: 1530675 | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
Fix p6bindassert code-gen.
kudo/moar-support: d865340 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
Named slurpy param binding.
kudo/moar-support: 0e26597 | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
Set up boxing handling.
jnthn BenGoldberg: They consistently think yo're doing something weird :P 15:43
BenGoldberg Well, I try to be consistently weird :) 15:45
Parrot's probably the most correct there -- it's a string of just one codepoint, no matter how many bytes it takes up. 15:46
15:57 xinming joined 16:02 xinming left 16:03 xinming joined
xinming sorry again if I just post the question to wrong channel. (network disconnection) 16:03
16:06 jac50 joined 16:07 jac50 is now known as lemOn91
dalek kudo/moar-support: 864b986 | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
Better bind fail error reporting.
16:11
16:16 DarthGandalf left 16:19 DarthGandalf joined 16:37 xinming left, xinming joined 16:40 darutoko joined 16:41 berekuk left 16:42 darutoko- left 16:47 FROGGS[mobile] left 16:52 berekuk joined 17:18 thou joined 17:21 ajr joined, ajr_ left, ajr is now known as Guest57020, Guest57020 is now known as ajr_ 17:23 dmol left 17:24 colleen93 joined
colleen93 a/s/l? 17:25
tadzik: thanks for inviting me here. But no one wants to cyber. 17:27
tadzik :|
17:27 dmol joined
jnthn tadzik: You might have mis-explained what we do here... :P 17:27
TimToady is not familiar with "cyber" as a verb. :)
tadzik well I do :P
jnthn: oh, colleen93 knows exactly what we're doing here 17:28
TimToady Mostly we just cyber Perl 6 here, and anything related to it, which is pretty much everything... 17:29
colleen93 'perl6: say 3;'
TimToady doesn't want the quoteses 17:30
nwc10 r: say any('male', 'female', 'bot')
camelia rakudo-parrot 03c08f, rakudo-jvm 03c08f: OUTPUT«any(male, female, bot)␤»
jnthn r: say ('male', 'female', 'bot').pick 17:31
camelia rakudo-parrot 03c08f, rakudo-jvm 03c08f: OUTPUT«female␤»
nwc10 r: say ('male', 'female', 'bot').pick
camelia rakudo-parrot 03c08f: OUTPUT«male␤»
..rakudo-jvm 03c08f: OUTPUT«bot␤»
nwc10 good. it is at least slightly random
timotimo you can't know that 17:32
nwc10 well, it's not identical. I guess the random number generator isn't simply returning 42
colleen93 timtimo: a/s/l? 17:33
17:33 rindolf left 17:34 rindolf joined, xinming left, xinming joined
colleen93 rakudo: niecza: std: eval 17:37
camelia rakudo-parrot 03c08f, rakudo-jvm 03c08f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling proto of 'eval' requires arguments (lines 1, 1)␤ Expected: :(, )␤»
timotimo huh, that's unexpected.
colleen93 tadzik: brt. cu in a bit 17:39
17:39 colleen93 left 17:41 dmol left 17:42 dmol joined 17:45 huf left
dalek p: b97cea4 | jnthn++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
Implement nqp::chain compilation.
17:48
jaffa4 could anyone try to install a module? 17:52
some files are not installed when a I use a module 17:53
moritz successfully installed a module 17:54
jaffa4 try Perl6::Format
is fomat.pm installed for you?
format.pm
17:54 felher left
dalek kudo/moar-support: 92a6a5f | jnthn++ | src/vm/moar/ops/perl6_ops.c:
Get p6capturelex working.
17:58
18:01 stevan_ left 18:04 huf joined
dalek kudo/moar-support: 9fe03f6 | jnthn++ | src/vm/moar/ (2 files):
Implement p6var.
18:15
18:19 fridim_ joined 18:23 stevan_ joined 18:24 stevan__ joined 18:27 stevan_ left 18:41 ajr_ left 18:43 btyler joined 18:46 kivutar left 18:55 ponpon is now known as ponbiki 18:58 bbkr1 left, kivutar joined
dalek kudo/moar-support: 30b66f0 | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
First pass at p6return.
19:01
kudo/moar-support: 486c40c | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
Auto-boxing of native args.
19:03 cirnopaws joined
cirnopaws Is this where I into perl 6? 19:03
19:03 rurban1 joined
FROGGS cirnopaws: what? 19:03
cirnopaws: you are missing a verb 19:04
jnthn I think for most verbs I can think of, the answer is "yes" though :)
FROGGS true
:o)
cirnopaws hooray
FROGGS cirnopaws: welcome :o) 19:05
moritz p: say 'this is also the channel where #perl6 you, cirnopaws' 19:06
camelia rakudo-parrot 03c08f: OUTPUT«this is also the channel where #perl6 you, cirnopaws␤»
19:09 darutoko left
cirnopaws woah did perl 5 have a repl? 19:11
moritz cirnopaws: not built-in 19:12
but there's a popular one on CPAN, Devel::REPL iirc
lee_ there is another called reply metacpan.org/pod/release/DOY/Reply.../bin/reply 19:14
it works out of the box, unlike Devel::REPL 19:15
dalek kudo/moar-support: f976a4a | jnthn++ | src/core/GatherIter.pm:
Make GatherIter contain something we can compile.

Just dies with NYI for now.
19:16
cirnopaws I'm on windows for whatever reason. I installed rakudo-star, do I have to fix any path variables to use modules and what-not? 19:18
moritz probably include C:\Rakudo\bin in PATH 19:19
cirnopaws ty 19:20
dalek kudo/moar-support: c502b75 | (Tobias Leich)++ | src/core/ (2 files):
moar behaves like jvm here
19:26 denis_boyun_ left 19:30 rurban1 left 19:31 rindolf left 19:36 MikeFair_ left 19:37 kivutar_ joined 19:42 Rotwang left 19:44 sqirrel joined 19:46 MikeFair_ joined
cirnopaws who has a good joke 19:53
FROGGS probably the CIA 19:55
(the hear much, you see)
19:58 Rotwang joined 19:59 xinming_ joined, cooper_ left 20:02 xinming left
japhb_ "Type check failed in assignment to '$!a'; expected 'Int' but got 'Int'" -- Now what the heck does *that* mean? 20:02
20:02 denis_boyun joined
moritz japhb_: are you using any foreign call stuff, or custom REPRs or so? 20:03
japhb_ wonders if somehow the meaning of Int changed between BEGIN time and run time
No custom REPRs, no foreign call. But I am using the metamodel to build the class in question.
flussence maybe you used a "but" somewhere? 20:04
or some subtype clause...
moritz r: sub f(Int $x) { say 42 }; { my constant Int = Str; f(Int) }
camelia rakudo-parrot 03c08f, rakudo-jvm 03c08f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'f' will never work with argument types (Str) (lines 1, 1)␤ Expected: :(Int $x)␤»
flussence I've had that problem before though I don't remember how I caused it
timotimo hehehe
moritz r: sub f(Int $x) { say 42 }; { my class Int { } f(Int) }
camelia rakudo-parrot 03c08f: OUTPUT«===SORRY!=== Error while compiling /tmp/xhfqRafKRo␤Two terms in a row␤at /tmp/xhfqRafKRo:1␤------> (Int $x) { say 42 }; { my class Int { } ⏏f(Int) }␤ expecting any of:␤ statement list␤ h…»
..rakudo-jvm 03c08f: OUTPUT«===SORRY!=== Error while compiling /tmp/bNhHXVvUcz␤Two terms in a row␤at /tmp/bNhHXVvUcz:1␤------> (Int $x) { say 42 }; { my class Int { } ⏏f(Int) }␤ expecting any of:␤ statement list␤ hori…»
japhb_ flussence: No 'but's 20:05
FROGGS r: sub f(Int $x) { say 42 }; { my class Int { }; f(Int) }
moritz well, 'but' is also just implemented with the MOP
camelia rakudo-parrot 03c08f, rakudo-jvm 03c08f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'f' will never work with argument types (Int) (lines 1, 1)␤ Expected: :(Int $x)␤»
japhb_ But I'm not redefining Int ... 20:06
moritz that's what they all say :-)
japhb_ Here, give me a sec, I'll push
moritz often such bad error messages are related to parameterized types or mixins
jaffa4 cirnopaws: you need that , especially if you use panda. 20:07
dalek -pb: c75a77e | (Geoffrey Broadwell)++ | lib/PB/Model/Generator.pm:
WIP: Continuing work on PB::Model::Generator
20:09
japhb_ moritz: github.com/samuraisam/p6-pb/blob/m...tor.pm#L37 and following 20:11
Things actually get interesting around line 76, when the fields are converted to attributes. 20:12
moritz japhb_: try to bind to $type rather than assigning 20:16
japhb_: otherwise you pass a container to as a the type constraint 20:17
20:17 SamuraiJack__ left
japhb_ smacks his forehead 20:17
I bet that's exactly it
gah 20:18
jnthn Then file a ticket so we can add the appropriate nqp::decont into the MOP code :)
20:18 xinming_ left
moritz japhb_: but printing a container actually prints the contents, which is why it it says "expected Int" instead of "expected Scalar" 20:18
20:19 xinming joined
japhb_ moritz: Yeah, and annoyingly, .WHERE sees through the container as well, so I couldn't tell I had different Ints. :-( 20:20
My test program gets much farther now, THANK YOU. 20:21
(I should use DUMP more often)
moritz japhb_: you're welcome
moritz tries to find out how Attribute initializes $!type 20:27
20:27 zakharyas joined
moritz ah, there's a .new method added in BOOTSTRAP.nqp 20:29
dalek -pb: 7a984ac | (Geoffrey Broadwell)++ | lib/PB/Model/Generator.pm:
Fix tricky PB::Model::Generator bugs; moritz++
jnthn yeah, that's the place to look
moritz spectesting the patch... 20:31
jnthn moritz++ 20:32
dalek -pb: 487caad | (Geoffrey Broadwell)++ | lib/PB/Binary/Writer.pm:
Easy parts of PB::Binary::Writer::write-message()

Only handles the very simplest cases, but it's a start.
20:33
20:33 stevan__ left
dalek p: dbe228b | (Tobias Leich)++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
mapped nqp::readfh
20:35
moritz bah, rakudo on parrot doesn't build anymore with a ulimit of 1.5GB RAM 20:43
and 2GB doesn't prevent the spectests from freezing
cirnopaws try 16
moritz ENO16GB 20:44
flussence throw swapfiles at it until it stops complaining? that's usually how I deal with it on my netbook... 20:45
moritz flussence: then it won't stop the laptop from freezing :-)
timotimo use zram :P
(last time i tried zram to get rakudo to compile better without swap, it froze my whole system) 20:46
cirnopaws download more ram 20:47
moritz compile without ulimit, spectest with ulimit
ok, my patch compiles, that's a good first step 20:48
jnthn Just don't do anything with usmile...
20:49 kurahaupo left
dalek ecs: d318f70 | (Geoffrey Broadwell)++ | S13-overloading.pod:
Fix 'is exported' typo in S13
20:49
20:49 kurahaupo joined 20:52 stevan_ joined, stevan_ left
dalek p: a91bdb0 | (Tobias Leich)++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
mapped nqp::writefh
20:53
20:53 stevan_ joined, denis_boyun left
dalek kudo/moar-support: 9c2ae9b | (Tobias Leich)++ | src/core/IO.pm:
use readfh/tellfh/writefh on moar too
20:54
japhb_ is very happy to see the virtual hackathon going on today 20:55
dalek kudo/moar-support: e5bf94a | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
Implement p6argvmarray.
20:59
21:00 ssutch joined
moritz t/spec/S32-io/other.t aborts after 34 tests on rakudo-parrot for me 21:06
anybody else seen that? 21:07
dalek kudo/nom: 087165f | moritz++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
decontainerize type constraints in Attribute.new
21:08
moritz japhb_: that should make your recent commit unnecessary
japhb_ Thanks, moritz. 21:17
lue
.oO(Hm. How *does* rakudo know where the setting is by default?)
21:18
FROGGS moritz: all 60 tests pass here 21:19
jaffa4 FROGGS: what tests?
FROGGS <moritz> t/spec/S32-io/other.t aborts after 34 tests on rakudo-parrot for me
21:21 jaffa4 left 21:29 jeff_s1 joined
dalek kudo/moar-support: c9ff211 | jnthn++ | src/vm/moar/ (2 files):
Implement p6list.
21:33
21:33 _sri left, geekosaur left, Celelibi left, Bucciarati left, japhb_ left 21:34 japhb_ joined, ribasushi left 21:35 _sri joined, ribasushi joined 21:36 Bucciarati joined 21:38 geekosaur joined
japhb_ What's the shorter way to say 'use Foo::Bar; constant Quux = Foo::Bar::Baz; # Now use Quux::Beer instead of Foo::Bar::Baz::Quux::Beer'? And is it implemented yet? 21:38
21:39 dwoldrich joined, MikeFair_ left
FROGGS japhb: use Foo::Bar:name<Quux>, which is NYI 21:39
well, sort of
I dunno if you could alias a symbol what you are currently immporting... 21:40
dalek kudo/moar-support: 5f60529 | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
Implement p6bindattrinvres.
21:42
FROGGS japhb: can't find it in S11 21:44
21:44 Celelibi joined
FROGGS japhb: use Foo::Bar:name<Quux> would just alias Foo::Bar to Quux, you could access Quux::Baz::Beer then 21:44
21:46 MikeFair_ joined 21:52 lemOn91 left 21:59 zakharyas left 22:09 berekuk left
japhb_ Nothing like asking a question, and immediately being pulled away from the computer ... 22:11
22:11 fridim_ left
japhb_ FROGGS: Roger that 22:12
FROGGS :o) 22:13
and fwiw, it should be doable to implement that kind of aliasing
22:14 sqirrel left
dalek kudo/moar-support: 6820ab7 | jnthn++ | src/vm/moar/ (2 files):
Partial p6scalarfromdesc implementation.
22:17
kudo/moar-support: f870efd | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
Fix thinkos in p6bindattrinvres.
kudo/moar-support: 1613c7f | jnthn++ | src/vm/moar/Perl6/Ops.nqp:
Implement p6definite.
FROGGS O.o 22:18
22:25 PacoAir left 22:29 kivutar_ left 22:31 berekuk joined, Rotwang left 22:33 dmol left 22:34 kivutar left
lizmat_ reading S11:391, I wonder whether "later" shouldn't be called "idle" 22:35
synopsebot Link: perlcabal.org/syn/S11.html#line_391
22:37 cirnopaws left
FROGGS you mean S17:391 22:38
synopsebot Link: perlcabal.org/syn/S17.html#line_391
FROGGS funny thing is that S11 has an "later" near that place :o)
lizmat_ oops, yeah, you're right :-) 22:39
jnthn Wonder if I can find tuits to try and get the new syntax in before the NPW talk...
lizmat_: BTW, on NPW - I'll be teaching on the Friday, but am free on the evening to do any pre-conf meetup. 22:40
lue lizmat_: s/later/⌛/ clearly. :)
jnthn lizmat_: On Sunday I gotta travel to Stockholm... 22:41
lizmat_: Dunno when you're planning on coming/going.
22:41 lizmat_ is now known as lizmat
lizmat we're planning on getting in Copenhagen on Wed evening 22:41
jnthn Oh wow...
lizmat see some sights
jnthn That's way early :)
Yeah ;)
lizmat hope the weather will cooperate
jnthn It's not bad here. 22:42
lizmat and on Thu I need to do the Rakudo release
jnthn ook
22:43 pippo joined
pippo o/ #perl6 22:43
lizmat jnthn: wrt to Channel.peek: how about it really doing a .poll, but keeping the result in the object until *the same thread* calls .poll ? 22:44
pippo lizmat: Hello. Finally I reach you again. 22:45
jnthn lizmat: That feels risky to me...
lizmat sorry, distracted by a number of things
jnthn lizmat: I think it's one of those semantics we'd look back on and think, "wtf..."
lizmat yeah, the moment I wrote it, my hair on the back of my neck went up
maybe we need to get rid of .peek altogether 22:46
jnthn Well, using it is kinda asking for trouble
I can think of the odd legit use
pippo lizmat: I found the problem on (^20_000).join(',').split(','). I.e. why on your machine is fast and on mine is slow. 22:47
22:47 sftp left
lizmat ok, what was it ? 22:49
pippo lizmat: I think that the problem lies on the fact that map is lazy. If you ask to calculate last element of the array (i.e. (^20_000).join(',').split(',')[19_999]) you'll see what I mean ;-) 22:50
lizmat ahhh..... good point
22:50 sftp joined
lizmat hmmm... still "fastish" here: 22:53
$ time perl6 -e 'say (^20_000).join(",").split(",")[19_999]'
19999
real0m12.825s
$ time perl6-p -e 'say (^20_000).join(",").split(",")[19_999]' 22:54
19999
real0m17.934s
pippo what if you try this sintax: (^20_000).join(',').split(',')[*-1]
what if you try this syntax: (^20_000).join(',').split(',')[*-1]
lizmat $ time perl6-p -e 'say (^20_000).join(",").split(",")[*-1]' 22:57
19999
real1m0.156s
pippo And if you ask to print the entire array? 22:58
lizmat that will simply take longer again because of either the joining or the writing
$ time perl6 -e 'say (^20_000).join(",").split(",")[*-1]' 22:59
Unhandled exception: java.lang.OutOfMemoryError: Java heap space
that's the jakudo versin
jnthn Hm, that wants profiling...
lizmat gather/take on jakudo, jnthn 23:00
we know it has problems, no?
jnthn Yeah, it stack overflows...
And maybe other things...
It's a quite horrible bug. 23:01
If it's me who's going to fix it, I'll look at it when I do gather/take on MoarVM.
I gotta understand the stuff in depth then anyway.
lizmat indeed 23:02
jnthn Thing that bothers me is the error is about *heap* space, not stack...
lizmat that single line of code too 4G of RAM
jnthn If it was about stack space I could comfortably attribute it to the bug I know.
But the fact it's heap makes me think there's more to it.
lizmat FWIW, on parakudo, that code eats up to 8G of RAM 23:04
jnthn eek 23:05
OK, so it's nothing backend specific 23:06
dalek ecs: 73baf14 | (Elizabeth Mattijsen)++ | S17-concurrency.pod:
Some close/done fiddling, plus the -> a sender

Which makes we wonder, whether we shouldn't have a "keeper" for channels as well.
jnthn That want ssome good in-depth analysis to work out what's going on.
lizmat I can't help but wonder whether it is some list reification issue 23:07
jnthn I think so.
dalek -pb: adb9120 | (Geoffrey Broadwell)++ | lib/PB/ (3 files):
Factor out RepeatClass enum to its own module
23:08
-pb: e1838b5 | (Geoffrey Broadwell)++ | lib/PB/Model/Generator.pm:
Quiet debug output; add reminder comment

Comment out the debug say's in PB::Model::Generator, and add a reminder comment to deal with redefining existing message classes.
-pb: 87d6d28 | (Geoffrey Broadwell)++ | lib/PB/Binary/Writer.pm:
Handle submessages in PB::Binary::Writer::write-message()
pippo jhnthn: when you'll look at this pb on Moar do not forghet also this one: my %h; for ^20_000 {%h.push($_ => $_)}
jhntn: which gives ... java.lang.OutOfMemoryError: Java heap space
dalek ecs: 2b89a45 | (Elizabeth Mattijsen)++ | S17-concurrency.pod:
Remove Channel.peek, it is too dangerous

And a remnant from Thread times.
pippo jnthn: when you'll look at this pb on Moar do not forghet also this one: my %h; for ^20_000 {%h.push($_ => $_)} 23:10
jnthn: which gives ... java.lang.OutOfMemoryError: Java heap space
lizmat and on that note, I bid you all a good night!
jnthn 'night, lizmat
FROGGS gnight lizmat
pippo o/ gnight
23:23 beastd left 23:30 xenoterracide_ left 23:38 logie joined 23:42 berekuk left 23:43 berekuk joined
pippo good night #perl6 23:46
23:46 pippo left
timotimo jnthn: if you can give me a bit of guidance, i can try to make the new syntax for winner work 23:46
i'm just not sure what exactly it needs to spit out 23:47
jnthn timotimo: Ah, cool. I think the best way is to write a WINNER that takes arguments. Maybe just thing, block, thing, block, and default (I think "later"?) as a named maybe. 23:48
timotimo: And just emit a call to that.
timotimo do i have to treat "more" and "done" differently? 23:49
i'm thinking i may have to write kind, thing, block, kind, thing, block instead for the arguments 23:50
jnthn oh, huh...
lemme check the latest spec
timotimo iirc "more" fires if a channel has an item ready and "done" for a channel will fire if the channel's closed?
23:51 xinming left
jnthn oh wow 23:51
that's changed more than I realized...
timotimo when is that talk? 23:52
jnthn Saturday :)
23:52 xinming joined
timotimo i could make that 23:52
jnthn :)
23:53 berekuk left
jnthn Yeah, agree on the "kind" thingy 23:53
23:54 benabik joined
jnthn Or at least that we need to distinguish them somehow to the primtive. 23:54
timotimo should that be an integer or a string?
jnthn The operative sentence is "This works because more only ever works on channels, while done only ever works on promises, so it knows to check the promise of channel $c rather than $c itself."
timotimo ah, done only works on promises, that's good to know.
23:54 benabik left
jnthn Yeah, but it means you need to grab the appropriate promise from the channel 23:55
23:55 berekuk joined
timotimo winner $p1, $p2 { done $p1 { ... }; done $p2 { ... } } # do we need the redundancy for $p1 and $p2 here? 23:55
jnthn That's what I'm kinda wondering...
I was a little surprised to see that 23:56
timotimo i guess it's useful for the "done * { ... }" case
but in the other cases it seems purely redundant
jnthn I wonder if we can say you only have to mention such things if you're gonna use the *
And even then you can mention others in the done/more clauses. 23:57
Something still feels a tiny bit off with that...
timotimo so the arguments to winner will be fed to any (well, "the one") block with a *, and any additional "done" blocks can fire as well. huh. 23:58