»ö« 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.
00:11 btyler joined 00:13 btyler left, Psyche^_ joined 00:16 Psyche^ left 00:30 rurban left 00:32 rurban joined 00:45 stevan_ joined 00:59 thou joined 01:12 thou left 01:19 LordV left 01:22 LordVorp joined 01:33 woosley joined 01:38 risou_awy is now known as risou 01:51 rurban left 01:52 rurban joined 01:57 risou is now known as risou_awy
moritz \o 02:29
[Coke] morning 02:31
moritz [Coke]: I had kinda hoped that updating star's NQP::Configure takes care of the nqp rename 02:32
but I guess I have to try again :-) 02:33
02:35 raiph joined
moritz eeks, Configure.pl in star seems to be mostly a copy of rakudo's Configure.pl 02:37
raiph r: say sprintf ( "%b", 1000 ) 02:42
camelia rakudo-jvm 882e33: OUTPUT«Nominal type check failed for parameter '$x'␤ in any directive:sym<b> at gen/jvm/stage2/NQPHLL.nqp:2139␤ in any !reduce at gen/jvm/stage2/QRegex.nqp:710␤ in any !cursor_pass at gen/jvm/stage2/QRegex.nqp:674␤ in any !protoregex at gen/jvm/stage2/…» 02:43
..rakudo-parrot 1d15c6: OUTPUT«Nominal type check failed for parameter '$x'; expected Any but got NQPMu instead␤ in method mine at gen/parrot/CORE.setting:3253␤ in any at gen/parrot/stage2/NQPHLL.nqp:2133␤ in any intify at gen/parrot/stage2/NQPHLL.nqp:2131␤ in any directi…»
raiph r: say sprintf ( "a", 1000 )
camelia rakudo-parrot 1d15c6, rakudo-jvm 882e33: OUTPUT«a 1000␤»
raiph r: say sprintf ( "%d", 1000 )
camelia rakudo-jvm 882e33: OUTPUT«Nominal type check failed for parameter '$x'␤ in any directive:sym<d> at gen/jvm/stage2/NQPHLL.nqp:2156␤ in any !reduce at gen/jvm/stage2/QRegex.nqp:710␤ in any !cursor_pass at gen/jvm/stage2/QRegex.nqp:674␤ in any !protoregex at gen/jvm/stage2/…»
..rakudo-parrot 1d15c6: OUTPUT«Nominal type check failed for parameter '$x'; expected Any but got NQPMu instead␤ in method mine at gen/parrot/CORE.setting:3253␤ in any at gen/parrot/stage2/NQPHLL.nqp:2133␤ in any intify at gen/parrot/stage2/NQPHLL.nqp:2131␤ in any directi…»
geekosaur space? 02:44
r: say sprintf("%d", 1000)
camelia rakudo-parrot 1d15c6, rakudo-jvm 882e33: OUTPUT«1000␤»
raiph r: say sprintf ( "%b", 1 )
camelia rakudo-parrot 1d15c6: OUTPUT«Nominal type check failed for parameter '$x'; expected Any but got NQPMu instead␤ in method mine at gen/parrot/CORE.setting:3253␤ in any at gen/parrot/stage2/NQPHLL.nqp:2133␤ in any intify at gen/parrot/stage2/NQPHLL.nqp:2131␤ in any directi…»
..rakudo-jvm 882e33: OUTPUT«Nominal type check failed for parameter '$x'␤ in any directive:sym<b> at gen/jvm/stage2/NQPHLL.nqp:2139␤ in any !reduce at gen/jvm/stage2/QRegex.nqp:710␤ in any !cursor_pass at gen/jvm/stage2/QRegex.nqp:674␤ in any !protoregex at gen/jvm/stage2/…»
moritz still LTA error message 02:45
geekosaur true
raiph oops. i thought i was doing that privately!
(and i missed geekosaur++'s explanation at first) 02:47
02:47 xinming_ left
raiph r: say sprintf ( "a", 1000 ) # this shoulda clued me in 02:47
geekosaur I was a bit terse there though 02:48
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot 1d15c6: OUTPUT«a 1000␤»
02:49 dansamo2 joined 02:51 dansamo left 02:53 tobyink left 03:03 stevan_ left 03:04 stevan_ joined 03:07 rurban left
TimToady n: say sprintf ( "%b", 1 ) # curious 03:07
03:07 ingy^ joined
camelia niecza v24-98-g473bd20: OUTPUT«Unhandled exception: Not enough arguments for this format string␤ at /home/p6eval/niecza/lib/CORE.setting line 1403 (sprintf @ 4) ␤ at /tmp/T5p9CEmzS7 line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at…» 03:07
TimToady heh
pugs: say sprintf ( "%b", 1 ) # curious 03:08
camelia pugs: OUTPUT«*** Insufficient arguments to sprintf␤ at Prelude.pm line 668, column 13-53␤»
03:15 jnap left 03:16 pdurbin joined
dalek ar: cc5c2b1 | moritz++ | / (11 files):
start to adapt build to multiple backends
03:20
03:34 awwaiid left 03:37 ingy^ left 03:39 risou_awy is now known as risou 03:42 ingy^ joined
lue r: say '"a\"b"'; say '"a\"b"' ~~ /\" [<!before <!after \>\"> \N]+ \"/ 03:54
camelia rakudo-jvm 882e33: OUTPUT«(timeout)» 03:55
..rakudo-parrot 1d15c6: OUTPUT«===SORRY!=== Error while compiling /tmp/ISlYpUEwjL␤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' ␤at /tmp/ISlYpUEwjL:1␤------> a\"b"' ~~ /\" [<!before <!after \>\"> \N⏏]+ \"/␤ …»
lue r: say '"a\"b"'; say '"a\"b"' ~~ /\" [<!before <!after \\>\"> \N]+ \"/
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot 1d15c6: OUTPUT«"a\"b"␤「"a\"b"」␤␤»
03:57 risou is now known as risou_awy
lue p: say '"a\"b"'; say '"a\"b"' ~~ /\" ~ \" [<!before <!after \\>\"> \N]+/ 04:00
camelia rakudo-parrot 1d15c6: OUTPUT«"a\"b"␤「"a\"b"」␤␤»
04:00 labster left 04:01 mls left, mls_ joined 04:07 dansamo2 left
TimToady blog.booking.com/hardening-perls-ha...ction.html 04:07
04:07 ingy^ left 04:08 xinming joined
lue Bah. I can't figure out why that regex only works sometimes (and never in the *one situation* I need it to :/) 04:14
TimToady it won't work consistently because you're not consistently doing one-pass parsing 04:19
doing lookbehind for \ is just wrong if there's another \ before that 04:20
lue makes sense. Does that apply to stuff like [<!before \"> \N | \\\"]+ too?
lue thinks he should probably look at how Perl 6 has managed to deal with this :) 04:21
TimToady before is generally fine
as long as you don't get too fancy
p6 uses a . nibbler for things that aren't escapes, and a \ just escapes whatever is after it 04:22
so it automatically figures out whether there are an even or odd number of \ and does the right thing 04:23
in STD.pm6, token nibbler is at line 442 or so 04:24
04:25 preflex_ joined, ChanServ sets mode: +v preflex_ 04:27 preflex left, preflex_ is now known as preflex
TimToady p: say '"a\"b"'; say '"a\"b"' ~~ /\" ~ \" [<!before \"> [ \\ . | . ]* / 04:29
camelia rakudo-parrot 1d15c6: OUTPUT«===SORRY!=== Error while compiling /tmp/OIbeefHzb_␤Unable to parse expression in metachar:sym<[ ]>; couldn't find final ']' ␤at /tmp/OIbeefHzb_:1␤------> ~~ /\" ~ \" [<!before \"> [ \\ . | . ]* ⏏/␤ expect…»
TimToady p: say '"a\"b"'; say '"a\"b"' ~~ /\" ~ \" [<!before \"> [ \\ . | . ]]* /
camelia rakudo-parrot 1d15c6: OUTPUT«"a\"b"␤「"a\"b"」␤␤»
lue Times like this remind me that regexes are, in fact, a whole 'nother programming language :) 04:35
TimToady only in nibbler it's basically just [<!before <stopper>> [ <escape> || . ]]* 04:45
and different quoting languages can define <escape> however they like 04:46
it does variable interpolation and \t thingies too
ssutch does it produce antimatter? 04:47
TimToady very small amounts
not enough to do a PET scan on your computer, alas 04:48
ssutch :)
TimToady y'know, with PET scans and CAT scans, they really should have tried harder to make MRI come out to DOG scans 04:49
ssutch hah! 04:50
TimToady or maybe GERBIL scans
geekosaur sadly the original (NMR) is even harder to twist 04:52
lue TimToady: Dipolar Oscillation Graphicalization 04:54
TimToady lue++ 04:55
lue (maybe graphicalizationing is closer to imaging)
.oO(GERBIL == GERBIL Electromagnetic Resonance Body Imaging Lab)
04:56
05:17 SamuraiJack joined
lue
.oO(The system en_US.UTF-8 Compose file is *very* large)
05:21
05:25 [Sno] left 05:29 wbill left 05:31 wbill joined 05:35 wbill left 05:40 risou_awy is now known as risou 05:45 raiph left 05:52 BenGoldberg left, kaleem joined
diakopter I thought mri was a real dog already.... 05:54
05:57 kaleem left, risou is now known as risou_awy 06:03 cognominal left 06:09 johnny5_ left 06:10 johnny5_ joined 06:11 labster joined 06:12 johnny5_ left 06:13 johnny5_ joined 06:14 Mouq left 06:22 Mouq joined, raiph joined 06:27 Mouq left 06:30 darutoko joined 06:31 Mouq joined 06:32 [Sno] joined 06:38 Mouq left 06:40 rurban joined 06:44 rurban left, Mouq joined 06:49 Mouq left 06:50 Mouq joined, mls_ left 06:52 mls joined 06:56 kaleem joined 07:01 raiph left 07:02 labster left 07:05 labster joined 07:15 raiph joined 07:38 FROGGS joined 07:40 sqirrel joined, denis_boyun joined 07:41 risou_awy is now known as risou 07:43 mstwu00 joined 07:47 awwaiid joined 07:57 risou is now known as risou_awy 08:06 sqirrel left 08:09 raiph left 08:10 Rotwang joined, xenoterracide left 08:11 xenoterracide_ joined 08:13 zakharyas joined 08:14 nnunley left 08:22 brrt joined
FROGGS np: say ().perl 08:28
p: say ().perl
camelia rakudo-parrot 1d15c6: OUTPUT«()␤»
FROGGS p: say ().item.perl
camelia rakudo-parrot 1d15c6: OUTPUT«$()␤»
08:29 tobyink joined 08:36 djanatyn left, Tene left
FROGGS p: class Cake { }; "a" ~~ /{ make Cake }/; say $/.ast; say $() # bug 08:37
camelia rakudo-parrot 1d15c6: OUTPUT«(Cake)␤␤»
08:37 Tene joined, Tene left, Tene joined, iSlug joined, djanatyn joined, cognominal joined 08:40 fhelmberger joined
FROGGS jnthn: you don't have libicu on windows by any chance? 08:40
08:41 denis_boyun left
FROGGS hmmm, we could ship the dlls..., and when nqp does a --gen-parrot or so, we just place it in include/bin (or we just put there by default) 08:42
08:43 cognominal left 08:51 FROGGS left
masak mornin', #perl6 09:01
09:01 mstwu00 left
jnthn preflex: tell FROGGS no, it was too much of a pain. 09:03
preflex Consider it noted.
09:05 FROGGS joined 09:07 darutoko- joined 09:09 darutoko left 09:10 nnunley joined
FROGGS jnthn: but don't you think it is worth the pain? 09:10
preflex FROGGS: you have 1 new message. '/msg preflex messages' to read it.
09:14 nnunley left
jnthn FROGGS: Well, I did my share of Parrot/ICU/Windows related pain already, so not to me. But I'm fine if somebody else wants to get it working. :) 09:15
FROGGS *g* 09:16
k
jnthn is happy that Moar has Unicode stuff built in, so everybody gets it automatically :) 09:17
FROGGS absolutely 09:18
just make it pass the spectest then :P
jnthn :P
09:20 iSlug left 09:22 Rotwang left
dalek kudo/nom: d916dbe | (Tobias Leich)++ | src/core/Parcel.pm:
RT #117425, fixes .perl for empty itemized Parcel
09:23
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=117425
FROGGS nr: say ().item.perl
camelia rakudo-jvm 882e33: OUTPUT«(timeout)» 09:24
..rakudo-parrot 1d15c6, niecza v24-98-g473bd20: OUTPUT«$()␤»
09:24 iSlug joined
moritz that's wrong, isn't it? 09:25
09:25 mstwu00 joined
FROGGS it is 09:25
moritz I seem to recall $() being a shorthand for $/.?ast or something
09:26 mstwu00 left
FROGGS the patch turns it int $( ) 09:26
$() is $/.ast // ~$/
p: class Cake { }; "a" ~~ /{ make Cake }/; say $/.ast; say $() # not correct either
camelia rakudo-parrot 1d15c6: OUTPUT«(Cake)␤␤»
FROGGS at least, I think 09:27
moritz why the bloody hell does a java process survive a kill -9 ?
rj: say 42 09:28
dalek ast: d78543c | (Tobias Leich)++ | S02-types/parcel.t:
tests for ().perl/().item.perl, RT #117425
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=117425
camelia rakudo-jvm 882e33: OUTPUT«42␤»
moritz ... and is then listed as having VIRT 0 RES 0 09:30
FROGGS moritz: since you are on that server... can you upgrade moarvm+nqp-m? 09:35
nqp-m: say(nqp::backendconfig<version>)
camelia nqp-moarvm: OUTPUT«2013.10-112-ge3e33c2␤»
FROGGS r: sub foo ($bar :D) { 1; } 09:36
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!===␤Can not invoke this object␤»
..rakudo-parrot 1d15c6: OUTPUT«===SORRY!===␤invoke() not implemented in class 'QAST::Op'␤»
09:36 dmol joined 09:37 dakkar joined 09:38 davecc left
FROGGS hmmm, maybe $() behaves correctly... specs/S05-regex.pod:C<$()> is a shorthand for C<$($/.ast // ~$/)> 09:40
felt just weird
moritz r: 'foo' ~~ /.* {make 'bar' } /; say $()
camelia rakudo-parrot 1d15c6, rakudo-jvm 882e33: OUTPUT«bar␤»
moritz r: 'foo' ~~ /.* {make Int } /; say $() 09:41
camelia rakudo-parrot 1d15c6, rakudo-jvm 882e33: OUTPUT«foo␤»
moritz yes, looks correct
FROGGS k, thanks
09:41 risou_awy is now known as risou
jnthn p: class Cake { }; "a" ~~ /{ make Cake.new }/; say $/.ast; say $() 09:42
camelia rakudo-parrot 1d15c6: OUTPUT«Cake.new()␤Cake.new()␤»
FROGGS yes, it was just about the type object
jnthn *nod*
moritz FROGGS: re nqp-m on camelia, I can update it, but it would be so much easier if rakudo/moar-supported landed :-) 09:43
FROGGS moritz: true :o)
moritz then I can just use Configure.pl --backends=parrot,jvm,moar and not maintain a separate compilation dir
FROGGS but I guess we will live with the current situation for a few weeks 09:44
moritz nqp-m: say(nqp::backendconfig<version>) 09:52
camelia nqp-moarvm: OUTPUT«2013.10-120-gb08a229␤»
FROGGS \o/ 09:53
moritz++ # thank you :o)
09:53 denis_boyun joined 09:54 djanatyn left, djanatyn joined 09:55 djanatyn left, djanatyn joined 09:56 djanatyn left 09:57 djanatyn joined 09:58 risou is now known as risou_awy 10:05 djanatyn left, djanatyn joined 10:21 xenoterracide_ is now known as xenoterracide 10:24 tobyink left 10:29 tobyink joined 10:32 ssutch_ joined 10:36 djanatyn left, iSlug left, djanatyn joined 10:41 djanatyn left 10:42 djanatyn joined 10:46 wsri left
FROGGS nqp: say(say ~~ Callable) 10:53
camelia nqp-moarvm, nqp-jvm, nqp-parrot: OUTPUT«1␤»
FROGGS nqp: say(int ~~ Callable)
camelia nqp-parrot: OUTPUT«No type check cache and no type_check method in meta-object␤current instr.: 'ACCEPTS' pc 9897 (gen/parrot/stage2/NQPCORE.setting.pir:4487) (gen/parrot/stage2/NQPCORE.setting:584)␤»
..nqp-moarvm, nqp-jvm: OUTPUT«0␤»
FROGGS how can I safely check if something is allable? 10:54
how can I safely check if something is callable?
masak r: sub foo {}; say &foo ~~ Callable
camelia rakudo-parrot d916db, rakudo-jvm 882e33: OUTPUT«True␤» 10:55
masak oh, you want to do it in NQP.
FROGGS: maybe check a place in the grammar/actions that does this?
FROGGS will do, thanks :o) 10:56
Woodi hi all :)
FROGGS hi Woodi
Woodi ad. TimToady++ link on booking.com: maybe keys/each randomization via alfabetical/numerical sorting would be enough to hide "natural" keys order ? and will be looong awaiting Perl feature too ;) 10:57
but then probably timing attack will be possible... 10:58
FROGGS a predictable sorting is a weird kind of randomization :o)
10:58 nnunley joined 11:00 wsri joined
Woodi and ad. sleep depravation: maybe in the mood of making talks like "how to talk to managers" it is possible to invite some special forces officer and ask him how to sustain longer periods without/with only a nap ? :) assuming they know that, maybe military guys just fill the pain and not have any special technique to dil with that :) 11:01
becouse I always thinked that geek lifestyle is just a normal life with gadgets :) 11:03
11:03 nnunley left
FROGGS *g* 11:03
Woodi what ? :)
FROGGS about the lifestyle :o) 11:04
11:05 djanatyn left, djanatyn joined
Woodi just borrow knowhow from secret services and make it everyday and everyone habits :) 11:06
maybe filter some useless things... 11:08
11:12 brrt left 11:13 pernatiy left
jnthn FROGGS: nqp::isinvokable 11:17
11:17 ssutch_ left
jnthn r: knowhow Everyday { } 11:18
camelia ( no output )
11:20 raiph joined, raiph left 11:22 xenoterracide left 11:25 Mouq left 11:26 kaleem left
FROGGS ahh, I grepped for 'invoke' 11:28
jnthn Darn morphology 11:32
11:33 daxim_ joined 11:42 risou_awy is now known as risou
moritz just listed to www.drabblecast.org/2013/10/03/drab...hbors-dog/ in his lunch break, and really liked it 11:43
11:45 kaleem joined 11:49 denis_boyun left 11:58 risou is now known as risou_awy 12:11 pernatiy joined 12:14 [Sno]_ joined, [particle]1 joined 12:15 scottp_ joined 12:16 Mouq joined, betterworld joined, apejens_ joined, moritz_ joined 12:17 zakalwe joined, zakalwe left, zakalwe joined, krunen_ joined, sergot_ joined, kshannon_ joined, cosimo_ joined, rjbs- joined, Util_ joined, pjcj_ joined 12:18 huf_ joined 12:19 eiro_ joined 12:20 mtj_ joined, Mouq left 12:21 dakkar left, [Sno] left, zakalwe_ left, [particle] left, renormalist left, Util left, sergot left, pjcj left, huf left, risou_awy left, moritz left, mtj_- left, rjbs left, [Sno]_ is now known as [Sno] 12:22 nwc10 joined 12:25 moritz_ is now known as moritz 12:26 risou_awy joined 12:27 sitaktif joined, go|dfish joined, dakkar joined 12:46 nnunley joined 12:51 nnunley left
FROGGS Q: should these two do the same? sub foo ($bar :Int) { 1; } and sub foo ($bar : Int) { 1; } 12:57
12:58 PZt left
FROGGS TimToady: ^^ ? 13:05
nr: sub foo ($bar : Int) { 1; }; foo("a") # wth is that anyway? 13:06
camelia rakudo-jvm 882e33: OUTPUT«java.lang.NullPointerException␤ in sub foo at /tmp/4Rgl1jE5E7:1␤ in block at /tmp/4Rgl1jE5E7: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.n…»
..rakudo-parrot d916db: OUTPUT«Lexical 'self' not found␤ in sub foo at /tmp/ymF2H3hAj2:1␤ in block at /tmp/ymF2H3hAj2:1␤ in any at /tmp/ymF2H3hAj2:1␤ in any at gen/parrot/stage2/NQPHLL.nqp:1146␤ in any eval at gen/parrot/stage2/NQPHLL.nqp:1133␤ in any evalfiles at…»
..niecza v24-98-g473bd20: OUTPUT«Potential difficulties:␤ $bar is declared but not used at /tmp/dpTEoY6xXn line 1:␤------> sub foo (⏏$bar : Int) { 1; }; foo("a") # wth is th␤␤Unhandled exception: No value for parameter '' in 'foo'␤ at /tmp/dpTEoY6xXn l…»
moritz FROGGS: it's a sub foo with parameter $bar marked as invocant, and an anonymous Int parameter 13:08
FROGGS ahh 13:09
so I should read it: foo ($bar: Int)
moritz (the invocant parameter also explains why r-p tries to access 'self')
FROGGS: correct
FROGGS so what do I do with this one? rt.perl.org/Ticket/Display.html?id=117417 13:10
moritz r: sub foo($bar :D) { }
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!===␤Can not invoke this object␤»
..rakudo-parrot d916db: OUTPUT«===SORRY!===␤invoke() not implemented in class 'QAST::Op'␤»
FROGGS my patches rakudo does not try to invoke the QAST::Op... but I dunno what it should do instead 13:11
moritz r: D
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/vIpRhDVLmH␤Undeclared name:␤ D used at line 1␤␤»
..rakudo-parrot d916db: OUTPUT«===SORRY!=== Error while compiling /tmp/xQVv0pspME␤Undeclared name:␤ D used at line 1␤␤»
moritz that's what it should do, IMHO
std: sub foo($bar :D) { }
camelia std 8adbc60: OUTPUT«Potential difficulties:␤ $bar is declared but not used at /tmp/jHC4BYHmyc line 1:␤------> sub foo(⏏$bar :D) { }␤ok 00:01 124m␤»
moritz std: sub foo($bar :D) { $bar }
camelia std 8adbc60: OUTPUT«ok 00:01 125m␤»
moritz wth does std parse it as?
subsignature?
FROGGS as type_constraint 13:12
err, no
moritz std: D
camelia std 8adbc60: OUTPUT«===SORRY!===␤Undeclared name:␤ 'D' used at line 1␤Check failed␤FAILED 00:01 120m␤»
moritz std: sub foo($bar :D) { D }
camelia std 8adbc60: OUTPUT«===SORRY!===␤Undeclared name:␤ 'D' used at line 1␤Potential difficulties:␤ $bar is declared but not used at /tmp/YGTohZBzae line 1:␤------> sub foo(⏏$bar :D) { D }␤Check failed␤FAILED 00:01 125m␤»
jnthn r: sub foo($bar : D) { } 13:14
camelia rakudo-parrot d916db: OUTPUT«===SORRY!=== Error while compiling /tmp/TPpTA0cff1␤Invalid typename 'D' in parameter declaration.␤at /tmp/TPpTA0cff1:1␤------> sub foo($bar : D⏏) { }␤»
..rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/RnaNhFkvvC␤Invalid typename 'D' in parameter declaration.␤at /tmp/RnaNhFkvvC:1␤------> sub foo($bar : D⏏) { }␤»
jnthn std: sub foo($bar : D) { }
camelia std 8adbc60: OUTPUT«===SORRY!===␤In parameter declaration, typename 'D' must be predeclared (or marked as declarative with :: prefix) at /tmp/lGVwGteIRM line 1:␤------> sub foo($bar : D⏏) { }␤Parse failed␤FAILED 00:01 123m␤»
jnthn std: sub foo($bar :wtf) { } 13:15
camelia std 8adbc60: OUTPUT«Potential difficulties:␤ $bar is declared but not used at /tmp/XeS3JW4dhG line 1:␤------> sub foo(⏏$bar :wtf) { }␤ok 00:01 124m␤»
jnthn hmm
13:16 kaleem left
FROGGS it is just a colonpair within the trait 13:16
I guess the grammar needs some tweaks :o) 13:18
jnthn I guess sub foo($x :rw) { } is just anothre way to write sub foo($x is rw) { } :) 13:24
FROGGS and I guessed :($x : Int) would mean :(Int $x) 13:25
jnthn No.
It means $x as invocant, and then an anon Int :)
s/Int/Int param/
FROGGS bah, you're just quoting moritz++ :o) 13:28
13:30 ajr joined, ajr is now known as Guest68662 13:31 Guest68662 is now known as ajr_ 13:43 risou_awy is now known as risou
dalek ast: c8bf154 | (Elizabeth Mattijsen)++ | S02-types/parcel.t:
Fix spaco: $() is the same as $( ) is it not?
13:51
13:51 colomon left
dalek kudo/nom: 158e905 | (Elizabeth Mattijsen)++ | src/core/Str.pm:
Remove superfluous -if-
13:52
timotimo lizmat: froggs put that space there, because $() means $/.?ast and hopefully $( ) means ().item 13:53
13:55 pdurbin left
FROGGS lizmat: an you please revert c8bf1544d6? 13:55
lizmat oh? 13:56
sure
why?
FROGGS lizmat: see what timotimo said
$() is something else than $( )
lizmat must backlog some more then 13:57
FROGGS lizmat: <timotimo> lizmat: froggs put that space there, because $() means $/.?ast and hopefully $( ) means ().item
lizmat thing is, that test just failed on parakudo
FROGGS lizmat: you'd need to pull nom then
jnthn isn't too hopeful :P
FROGGS p: say ().item.perl 13:58
camelia rakudo-parrot d916db: OUTPUT«$( )␤»
FROGGS see?
dalek ast: 1727635 | (Elizabeth Mattijsen)++ | S02-types/parcel.t:
Revert "Fix spaco: $() is the same as $( ) is it not?"

See irclog.perlgeek.de/perl6/2013-11-07#i_7826186
FROGGS thank you :o)
lizmat yw, sorry for the noise 13:59
FROGGS np
14:00 PacoAir joined, risou is now known as risou_awy 14:07 jnap joined, nnunley joined
dalek kudo-star-daily: f256a8e | coke++ | log/version.log:
today (automated commit)
14:09
kudo-star-daily: e3d5959 | coke++ | log/version.log:
today (automated commit)
kudo-star-daily: 7e15317 | coke++ | log/version.log:
today (automated commit)
kudo-star-daily: 7d19c1d | coke++ | log/ (2 files):
today (automated commit)
kudo-star-daily: 55e665a | coke++ | bin/star.sh:
track changes to rakudo build process.
[Coke] moritz: github.com/rakudo/star/commit/cc5c...b23faef396 also upgrade a bunch of modules. intentional? 14:10
er, those might be down or sidegrades, I dunno.
moritz [Coke]: not intentional, but also not harmful
[Coke]: thanks for asking
[Coke] We should get a useful run of rakudo-star-daily today. yay. 14:11
moritz++
14:14 denis_boyun joined
FROGGS cool! 14:15
[Coke] so, my issue was a combination of the github urls (they triggered a request for auth, which means they never got cloned properly via cron, so anything that touched them later died) and bad error handling in my script. 14:18
looks like it's made it as far as building rakudo-latest, I'll check in on it later today and try to remember to do a push. 14:19
dalek rl6-roast-data: e9f361d | coke++ | / (3 files):
today (automated commit)
rl6-roast-data: e847b2e | coke++ | / (5 files):
today (automated commit)
[Coke] ~~ 14:20
FROGGS p: my $foo = '*'; say "q*" ~~ / q <$foo> / # lol 14:25
camelia rakudo-parrot d916db: OUTPUT«Failed allocation of 1160118272 bytes␤Parrot VM: PANIC: Out of mem!␤C file src/gc/gc_gms.c, line 1974␤Parrot file (not available), line (not available)␤␤We highly suggest you notify the Parrot team if you have not been working on␤Parrot. Use…» 14:26
moritz so FROGGS, maybe should should notify the Parrot team :-)
FROGGS *g*
^----- again such a quantifier O.o
moritz my hypothesis is that it somehow quantifies the null string
and then produces many cursors 14:27
FROGGS p: "" ~~ / * / # this works though
camelia rakudo-parrot d916db: OUTPUT«===SORRY!=== Error while compiling /tmp/RH5GGLL2U2␤Quantifier quantifies nothing␤at /tmp/RH5GGLL2U2:1␤------> "" ~~ / *⏏ / # this works though␤ expecting any of:␤ postfix␤ infix stopper…»
moritz but then, why would it try to allocate so much memory at once?
p: say 'a' ~~ / ''* /
camelia rakudo-parrot d916db: OUTPUT«Failed allocation of 850624512 bytes␤Parrot VM: PANIC: Out of mem!␤C file src/gc/gc_gms.c, line 1974␤Parrot file (not available), line (not available)␤␤We highly suggest you notify the Parrot team if you have not been working on␤Parrot. Use …»
FROGGS j: say 'a' ~~ / ''* / 14:28
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
FROGGS j: say 1
:/
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
moritz any idea how I can make rakudo-jvm more robust? 14:29
camelia + rj, that is
FROGGS no, my exp with rj is very limited
14:30 colomon joined, araujo left, jac50 joined, araujo joined, araujo left, araujo joined 14:31 jac50 is now known as lemOn91 14:32 risou_awy is now known as risou, cognominal joined 14:35 rurban joined 14:39 rindolf joined 14:43 jeff_s1 joined 14:44 bluescreen10 joined 14:49 bluescreen10 left, bluescreen10 joined
masak moritz: I don't have any idea, but... is it known why rj is currently *not* robust? 14:50
if it's not known, my idea would simply be "find out why"... :) 14:51
lizmat having installed javac this weekend at the APW, I found that I could not run the spectest
on jakudo
jnthn Well, what the two have in common is the eval server.
lizmat after ~10 tests, it just starts eating all memory
jnthn Any test ran without that was fine, and that's how the spectets are run. 14:52
moritz masak: one problem is that the resource limits (CPU, memory) don't apply to the evalserver, because it runs in a separate process
and yes, the evalserver seems to accumulate memory
lizmat also: just a simple (^20000).join(",").split(",") makes it take up to 500% CPU at one point
so I would assume there is some mem fragmentation / gc issue
14:53 btyler joined
lizmat as I could only envision it taking 200% CPU (one for the main thread, one for the "normal" gc) 14:53
jnthn Well, we don't know how many GC threads it's actually running :)
moritz also it could be JITting in a thread 14:54
no idea if it does
jnthn also that.
It may well do. It's a fairly obvious thing to do.
moritz if even *I* got the idea :-)
14:55 kaare_ joined
lizmat well, it is so bad, that I wouldn't be able to do the release in ~ 2 weeks 14:55
as I won't be able to spectest it before release
so at least we need some way to make the spectest run 14:56
if that is slower and serial, that's ok with me :-)
jnthn lizmat: Well, roast does it without the evalserver 14:57
lizmat: But I would like to find out why/when/how it regressed
As it used to be quite reliable
diakopter lizmat: well, which jvm is it 14:58
moritz fwiw I have those problems with OpenJDK
and camelia has these problems with Oracle's JDK, iirc
jnthn I reproduced it with Oracle's one also
lizmat $ javac -version 14:59
javac 1.7.0_45
15:02 rurban left 15:07 cognominal left 15:11 cognominal joined 15:13 jnap left, xenoterracide joined 15:20 rurban joined
timotimo i'm wondering if there has been any progress on JVM class allocation counting for rakudo 15:25
dalek ecs: 0b52065 | (Carl Mäsak)++ | S17-concurrency.pod:
[S17] unspec $*TICK

It's problematic in that it assumes a single global scheduler. It also seems to punish the many for a feature only benefiting the few.
There are preferable ways to handle this, perhaps something like Supply.interval(:at(now.ceiling), :every(1))
15:26
15:27 telex left
lizmat masak: wrt to punishing, that's an implementation detail 15:28
$*TICK *could* just come into operation whenever the first .tap on it is done
15:28 telex joined
jnthn I agree we coulda found a way to not make it punishing. 15:29
lizmat p: "abcdef".split("", :limit(3) ).elems.say # shouldn't this say "3" ? 15:30
camelia rakudo-parrot 158e90: OUTPUT«6␤»
jnthn But mostly I think Supply.blah is a better API for it.
timotimo p: "abcdef".split("", :limit(3)).perl.say
camelia rakudo-parrot 158e90: OUTPUT«("a", "b", "c", "d", "e", "f").list␤»
jnthn lizmat: I don't remember :limit, but it's in the spec... :)
timotimo i think it should say 4 actually
split 3 times, gives 4 pieces? 15:31
lizmat oddly enough, I could not find what limit means
TimToady not that Instant.ceiling is actually defined...
timotimo well, let's make something up and write it in the spec! :)
lizmat in any case, :limit seems ignored on .split 15:32
TimToady p: "abcdef".split('', 3).say 15:33
camelia rakudo-parrot 158e90: OUTPUT«a b cdef␤»
TimToady that because it's a positional argument
lizmat argh
indeed
PerlJam masak: $*TICK would have been fine if it was indexed to the clock of the long now (longnow.org/clock)
:-)
TimToady :snapto(year) 15:34
DateTime.tap(:every(month) 15:36
lizmat p: "abcdef".split("",0).say 15:37
camelia rakudo-parrot 158e90: OUTPUT«␤»
lizmat p: "abcdef".split("",1).say
camelia rakudo-parrot 158e90: OUTPUT«abcdef␤»
TimToady a fancy way to say x 0 or x 1 :)
lizmat ok, so a limit of 0 returning "" is correct ? 15:38
TimToady thinks it's meaningless
lizmat p: "abcdef".split("",1).WHAT.say
camelia rakudo-parrot 158e90: OUTPUT«(List)␤»
lizmat p: "abcdef".split("",0).WHAT.say
camelia rakudo-parrot 158e90: OUTPUT«(List)␤»
TimToady so returning "" is as good as anything
lizmat actually, it's an ampty list return it seems 15:39
timotimo that makes a bit more sense than ""
retupmoca 222222222222222222222222222 15:42
diakopter r: $222222222222222222222222222
camelia ( no output ) 15:43
..rakudo-parrot 158e90: OUTPUT«Cannot use negative index -9223372036854775808 on Nil␤current instr.: 'throw' pc 403519 (src/gen/p-CORE.setting.pir:169516) (gen/parrot/CORE.setting:10565)␤called from Sub 'sink' pc 439572 (src/gen/p-CORE.setting.pir:182740) (gen/parrot/CORE.setting:…»
diakopter r-j: say $222222222222222222222222222
camelia rakudo-jvm 882e33: OUTPUT«(Any)␤»
15:43 beastd joined
diakopter r-j: say $22222222222222222222222222222222222222222222222222222222222 15:43
camelia rakudo-jvm 882e33: OUTPUT«(Any)␤»
diakopter heh, ok
15:44 Timbus|Away joined 15:46 Timbus left, Timbus|Away is now known as Timbus, jnap joined
TimToady I guess that makes Perl a "sign language" on JVM 15:47
15:52 Mouq joined 15:58 Mouq left
jnthn decomanatee & 16:00
16:01 Guest26798 is now known as denysonique
lizmat
.oO( that would need a *big* aquarium, just to be decorative )
16:02
16:04 beastd left 16:12 dansamo2 joined
pmichaud good morning, #perl6 16:16
timotimo so, i was wondering. could string constants get a fast path for string-equals operations?
and would that likely make any difference at all?
lizmat pmichaud o/
16:20 btyler left 16:23 [Sno] left
timotimo hm. string constants are just interned on a per-compunit (i think?) basis, so in order to make it any faster in "real life" it would probably have to do a leader-selection for all string constants when ... i guess deserializing? 16:24
pmichaud p: "abcdef".split("",1).perl.say
camelia rakudo-parrot 158e90: OUTPUT«("abcdef",).list␤»
timotimo does the optimisation make sense? i was thinking it could help with named parameters, method/class/symbol names or something 16:26
hm, but then it would probably need to make hash access faster, rather than string comparison, and that wouldn't help much, would it?
16:26 btyler joined
PerlJam pmichaud: o/ 16:28
16:31 daxim_ left 16:35 bluescreen10 left
timotimo oh, and pmichaud o/ 16:35
now i'm wondering if perhaps rakudo/nqp is somehow bad at boxing/unboxing in a way that i could fix 16:36
but i'm having a hard time coming up with a test for that
i mean, even if i write code to box/unbox an int a thousand times, how would i know if that's taking too long, or is okay? except if it's really pathologically slow 16:39
16:39 apejens_ is now known as apejens 16:40 ajr_ left
pmichaud timotimo: the real question to ask at this point is "is boxing/unboxing a significant portion of running a program?" 16:41
if 10% of a program is spent boxing/unboxing ints, then yes.
TimToady what are we doing N times that should be done 1 time, and what are we doing N*M times that we should only be doing N times? 16:42
timotimo right.
pmichaud if 1% of a program is spent boxing/unboxing ints, then even if you make it twice as fast you'll have only saved 0.5%
timotimo i was thinking maybe there's some parameter to boxing/unboxing ints/strings/nums/... that can already be known at compile time, like the hints for bindattr/getattr if the class and attribute are compile-time constant, then there could be a saving
but you're right of course.
if it only makes up about 1% of the whole run time, i better wait until it makes up 50% of run time :) 16:43
PerlJam timotimo: And you could start a new perl tradition of profiling on boxing day
TimToady feels like we never figured out how to figure out why r-p is so slow
pmichaud TimToady: oh, I agree.
timotimo TimToady: that's my feeling as well, but there's probably people who have a much better idea than me. kcachegrind is pretty opaque to me :(
16:44 tobyink left
TimToady of course, I don't doubt that it's an intersection of many factors, but finding out where those factors multiply rather than add would be useful 16:44
pmichaud well, we know that the calling conventions were really slow at one time. 16:45
TimToady my gut feeling is that there are just too many interfaces that are at a misplaced level of abstraction
pmichaud it was easy to come up with PIR programs that demonstrated that Parrot was fundamentally slower than Perl 5
lizmat p: "foo-bar".split(/<ws>/).join(",").say # what *should* this say ?
camelia rakudo-parrot 158e90: OUTPUT«,foo,-,bar,␤» 16:46
TimToady "an OO assembly language" is kind of symptomatic
pmichaud lizmat: that strikes me as being correct-ish... perhaps the leading and trailing ""'s aren't correct though. I'd have to re-read the spec.
timotimo <ws> also matches zero-width word boundaries? 16:47
pmichaud <ws> matches \s* except between pairs of word characters
pairs of adjacent word characters 16:48
timotimo in that case, i tend to agree that it could be considered right
TimToady I think getting nulls fore and aft with split is generally just an indication you should be using comb instead :)
maybe not in this case, but I think the nulls are correct
lizmat oddly enough, there is a spectest that says the comma's at beginning and end shouldn't be there 16:49
16:49 colomon left
pmichaud lizmat: yes, I know there was some back-and-forth about null matches with split, and I don't know where the pendulum currently is at 16:49
lizmat t/spec/S32-str/split.t, line 139, #63066
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=63066
TimToady p: "foo-bar".split(/<!ww>/).join(",").say
camelia rakudo-parrot 158e90: OUTPUT«,foo,-,bar,␤»
pmichaud S32 says "Null trailing fields are no longer trimmed by default." 16:50
TimToady lizmat: the pendulum is still way on the side of "make it less dwimmy than P5 does"
lizmat so the test is incorrect 16:51
TimToady because history shows that with split, every DWIM has an equal and opposite WAT
16:52 zakharyas left
TimToady probably means we need a .trim analog(ue) for lists 16:54
16:54 cognominal left
timotimo would it work like .grep(so *)? 16:55
16:55 renormalist joined
timotimo oh, no, only at the beginning and end, not in the middle 16:55
lizmat "foo-bar".split(/<ws>/, :trim ) ? 16:56
pmichaud that's more of a... right
TimToady lessee, if huffman turns .flip into .reverse, then .trim should turn into something .xxxxxxx
16:56 rurban left
pmichaud I agree with TimToady that :trim is better specified as ".comb" :-P 16:56
TimToady so we've got seven characters to bikeshed with :)
16:56 rurban joined
TimToady lizmat: I would not put a :trim option on split 16:56
(but then, I probably wouldn't put a :chop option on quotes either...) 16:57
first, :trim is ambiguous
maybe it means .trim every element
lizmat well, I think I removed that already, didn't I?
TimToady dunno, branefuzz 16:58
timotimo okay, this is more of a C question: if i put a check for the repr in use into the repr_box_int op and give a direct call to the p6int.c's functions, would the compiler likely inline that? it doesn't seem likely to me, especially since there's some kind of registry involved and the ops don't directly know the reprs afaict
pmichaud so, the list analog to .trim we're looking for would remove elements from the ends of a list that match something?
.grep <-> .comb 16:59
dalek ecs: 6d0e761 | (Elizabeth Mattijsen)++ | S02-bits.pod:
Remore :chop from quoted strings

Discussed this with jnthn++ at APW 2013: basically, this should be a job of the optimizer when it sees a .chop.
timotimo is thinking about something like squish/splat :P
pmichaud .reverse <-> .flip
17:00 risou is now known as risou_awy, risou_awy is now known as risou 17:01 raiph joined
pmichaud .splice <-> .substr 17:01
.elems <-> .chars/.graphs/...
timotimo heads out 17:02
pmichaud .middle 17:03
i.e., the part between the head and the tail :-)
17:03 rurban left
TimToady of course, p5 split just removes the tail 17:04
17:04 rindolf left, rindolf joined
pmichaud also .body 17:05
TimToady maybe it's just not worth putting in the core language
pmichaud agreed that it should be speculative at this point
TimToady let the user write a pop-while if they really need it 17:06
17:06 jeff_s2 joined
TimToady or the equivalent left-to-right FP solution that is beautiful and runs much slower :) 17:06
lizmat p: my @a; @a[5]=1; say @a.elems; @a[5]:delete; say @a.elems 17:07
camelia rakudo-parrot 158e90: OUTPUT«6␤0␤»
pmichaud maybe the list form should be .trim and the string form should be .clip (parallel to .flip) :-)
lizmat :delete auto-removes elems from the end
TimToady lizmat: doesn't remove '' 17:08
pmichaud well, it's removing non-existent elems
not ""
lizmat true, but I just wanted to mention it, just in case it changes anybody's train of thought
pmichaud p: "foo-bar".split(/<ws>/).join(',').perl.say
camelia rakudo-parrot 158e90: OUTPUT«",foo,-,bar,"␤» 17:09
17:09 jeff_s1 left
pmichaud ummmmmm 17:09
oh.
p: "foo-bar".split(/<ws>/).perl.say
camelia rakudo-parrot 158e90: OUTPUT«("", "foo", "-", "bar", "").list␤»
TimToady wastes a lot of time thinking about a left-to-right solution that works lazily
pmichaud .truncate has one too many characters to match the .flip/.reverse pattern 17:10
.snip might be too close to .splice :)
TimToady .truncat </ducks>
dalek ast: 2f98819 | (Elizabeth Mattijsen)++ | S32-str/split.t:
Fix broken tests related to RT #63066
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=63066
pmichaud I like .truncat :-)
reminds me too much of a Cat, though. 17:11
TimToady If I had it to do all over again, I'd spell "truncate" without the "e".
lizmat
.oO( then what about .cho ? )
pmichaud .shear .shave .snip .crop .pare .clip 17:12
(thesaurus.com)
.thin
.strip and I'm done with this for now :) 17:13
oh, .shuck :-P
TimToady .dock 17:14
pmichaud .peel has a certain appeal
"take off the outsides"
TimToady .detail :)
pmichaud also .pare 17:15
TimToady .behead
so why isn't it .dehead?
pmichaud apparently "be-" as in "off" 17:16
17:10 <TimToady> .truncat </ducks>
oops
17:16 risou is now known as risou_awy
pmichaud painintheenglish.com/case/819 17:16
"Why 'behead' and not 'dehead' or 'unhead'?"
TimToady it doesn't not bespeak well of English 17:18
pmichaud and .behead seems to have a totally different sense than .behind :-) 17:19
TimToady "foo-bar".split(/<ws>/).bethwack
lizmat wow, p6 bug report by Zefram ! 17:20
pmichaud well, sorta.
FROGGS hi @all :o)
pmichaud on the bug report I'm thinking I'll just fix the comment and close the report. 17:21
17:24 rurban joined
jnthn evening, #perl6 17:24
17:24 [Sno] joined
lizmat jnthn o/ 17:27
FROGGS hi jnthn
dalek kudo/nom: 84d2cb8 | (Elizabeth Mattijsen)++ | src/core/Str.pm:
De-gather/take Str.split

So at least (^20000).join(",").split(",") doesn't die horribly on jakudo
17:29
diakopter
.oO( 999999 bottles of unnecessary cps transforms on the wall, 999999 bottles of ... )
17:30
pmichaud .take one down ... 17:31
FROGGS hehe 17:32
diakopter
.oO( if only we could automate the removal of these bottles.. )
17:33
17:34 PZt joined
diakopter who's zefram 17:34
lizmat wonders how gather/take will survive Promises/Channels/Supplies 17:35
zefram is a dedicated p5p'er, one of the few that know p5 core intimately
*who
diakopter masak: one of the less! 17:36
17:37 xenoterracide left
TimToady lizmat: gather/take might be implemented with a channel underneath in some cases 17:38
17:39 iSlug joined, ajr joined, ajr is now known as Guest86942
TimToady they have nothing to do with supplies however, which are lossy 17:39
17:39 Guest86942 is now known as ajr_
TimToady channel : TCP :: supply : UDP 17:39
timotimo oh, is that so! 17:40
lizmat on Perl events, you can recognize him by his hat: www.fysh.org/~zefram/
diakopter so supplies can be optimized away without worry?
lizmat just like your fastest backup is to /dev/null ?
17:41 Mouq joined, SamuraiJack left
timotimo diakopter: yeah, the optimizer can just remove them completely in most cases! great news! :) 17:42
lizmat refrains from pushing an empty repo 17:43
17:45 Mouq left 17:47 dansamo2 left, xenoterracide joined
lizmat diakopter: zefram's picture from a Perl workshop: farm7.static.flickr.com/6117/634418...cd1d_z.jpg 17:48
timotimo Ticket RT #72842: Status changed from 'open' to 'resolved' \o/ 17:49
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=72842
lizmat timotimo++ 17:50
17:50 rurban left
diakopter r-j: class class is class { } 17:51
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/rgBa67TKyA␤'class' cannot inherit from itself.␤at /tmp/rgBa67TKyA:1␤------> ␤»
diakopter r-j: class class does class { }
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/5BprDcGTi_␤Unable to parse class definition␤at /tmp/5BprDcGTi_:1␤------> class class does ⏏class { }␤ expecting any of:␤ statement list␤ prefix or te…»
tadzik r: class does does class 17:52
camelia rakudo-parrot 158e90: OUTPUT«===SORRY!=== Error while compiling /tmp/FL_RRfGCl2␤Unable to parse class definition␤at /tmp/FL_RRfGCl2:1␤------> class does does ⏏class␤ expecting any of:␤ statement list␤ prefix or term…»
..rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/1RVd3ofCv2␤Unable to parse class definition␤at /tmp/1RVd3ofCv2:1␤------> class does does ⏏class␤ expecting any of:␤ statement list␤ prefix or term␤…»
lizmat r: do be do be do
timotimo yeesh :)
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/oAy03c8B4Q␤Undeclared routines:␤ be used at line 1␤ do used at line 1␤␤»
..rakudo-parrot 158e90: OUTPUT«===SORRY!=== Error while compiling /tmp/ZQS_cBqaBf␤Undeclared routines:␤ be used at line 1␤ do used at line 1␤␤»
17:53 felher left
lizmat dinner& 17:54
diakopter r-j: class X is X { }
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
diakopter -_-
r-p: class X is X { } 17:55
camelia rakudo-parrot 158e90: OUTPUT«(timeout)»
timotimo is a rebuild in progress or something? 17:56
17:56 colomon joined
diakopter r: 1 17:57
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
( no output )
diakopter r: 0 17:58
17:58 cognominal joined
camelia rakudo-jvm 882e33: OUTPUT«(timeout)» 17:58
( no output )
17:59 dakkar left
timotimo nqp: nqp::say(nqp::eqat("ohai", "hai", 1)); 18:00
camelia nqp-parrot: OUTPUT«Error while compiling op eqat (source text: "nqp::eqat(\"ohai\", \"hai\", 1)"): No registered operation handler for 'eqat'␤current instr.: '' pc 58571 (gen/parrot/stage2/QAST.pir:21439) (gen/parrot/stage2/QAST.nqp:3584)␤»
..nqp-moarvm: OUTPUT«Error while compiling op eqat (source text: "nqp::eqat(\"ohai\", \"hai\", 1)"): No registered operation handler for 'eqat'␤frame_name_1109␤»
..nqp-jvm: OUTPUT«Method 'type' not found for invocant of class 'NQPMu'␤ in coerce (gen/jvm/stage2/QAST.nqp:4097)␤ in as_jast (gen/jvm/stage2/QAST.nqp:2981)␤ in (gen/jvm/stage2/QAST.nqp:3678)␤ in compile_all_the_stmts (gen/jvm/stage2/QAST.nqp:3666)␤ in as_jast (gen/jvm…»
timotimo i kind of thought i had put that into master
ah. well, it still applies cleanly, so i'll just go ahead and merge it. it contains a stage0 rebuild, though 18:01
is that bad? i could leave out the commits that use eqat in the nqp source and wait for some other stage0 update 18:02
TimToady p: role class does class { }
camelia rakudo-parrot 158e90: OUTPUT«===SORRY!=== Error while compiling /tmp/WJsUPTRURS␤Unable to parse role definition␤at /tmp/WJsUPTRURS:1␤------> role class does ⏏class { }␤ expecting any of:␤ statement list␤ prefix or t…»
TimToady p: role role does role { } 18:03
camelia rakudo-parrot 158e90: OUTPUT«===SORRY!=== Error while compiling /tmp/LGR__QeOf9␤Unable to parse role definition␤at /tmp/LGR__QeOf9:1␤------> role role does ⏏role { }␤ expecting any of:␤ statement list␤ prefix or ter…»
TimToady n: role role does role { }
camelia niecza v24-98-g473bd20: OUTPUT«===SORRY!===␤␤Unable to parse role definition at /tmp/aqvg8RTNyx line 1:␤------> role role ⏏does role { }␤␤Parse failed␤␤»
TimToady n: role Foo does Associative {} 18:04
camelia ( no output )
timotimo say, now that my CLA has no doubt reached the higher up places of the perl foundation, could i get a rakudo commit bit? :3
diakopter moritz: how do I relanuch the evalserver 18:06
18:07 Rotwang joined, pernatiy left 18:08 thou joined
dalek p: c726cd5 | (Timo Paulssen)++ | src/vm/ (4 files):
add nqp::eqat to jvm and parrot.
18:09
p: edab32a | (Timo Paulssen)++ | src/vm/parrot/ops/nqp.ops:
special case same-encoding strings, length-1 needles.
nqp: 705d53a | (Timo Paulssen)++ | src/vm/parrot/ops/nqp.ops:
18:09 dalek left
timotimo sorry, dalek :( 18:09
18:09 dalek joined, ChanServ sets mode: +v dalek
diakopter I thought Needles was a character on BTTF 18:10
timotimo i asked the freenode staffers if we could get a gentler flood limit for dalek, but they don't do that kind of thing 18:13
18:14 fhelmberger_ joined 18:16 fhelmberger left, fhelmberger_ left, ktrout joined, fhelmberger joined
segomos cant just rate limit his output? 18:17
18:17 tobyink joined
timotimo well, yeah. somebody would have to code it, though :) 18:18
or configure it? i have no idea.
arnsholt My suspicion is that dalek gets rate limits from several networks, but doesn't keep them straight (single global var, perhaps?)
timotimo it seems more like it has one per channel, rather than one per network
18:18 ktrout left 18:19 tipdbmp left, samebchase left
arnsholt #parrot is on a different network, if that's what you were thinking of 18:19
18:21 fhelmberger left
diakopter arnsholt: dalek is a separate process per network 18:21
arnsholt Oh. In that case, ignore what I said =) 18:22
diakopter segomos: it was rate limited at one point.. but apparently not very absolutely..
18:24 thou left
timotimo huh. 18:28
18:28 tipdbmp joined 18:31 rurban joined
timotimo "Unable to read configuration from NQP on the JVM" ... huh? what did i do? :/ 18:34
Rotwang hi 18:40
18:40 btyler left
Rotwang r: say ~1 18:41
camelia rakudo-parrot 84d2cb: OUTPUT«1␤»
..rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
Rotwang r: say ~1.WHAT
camelia rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
..rakudo-parrot 84d2cb: OUTPUT«use of uninitialized value of type Int in string context in sub warn at gen/parrot/CORE.setting:674␤␤␤»
18:41 tobyink left
Rotwang why is that ~1.WHAT doesn't work? 18:42
arnsholt r: (~1).WHAT # Precedence perhaps?
camelia ( no output )
..rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
arnsholt r: say (~1).WHAT # Derp.
camelia rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
..rakudo-parrot 84d2cb: OUTPUT«(Str)␤»
arnsholt There we go
Rotwang: The .WHAT binds tighter than ~, so it stringified a type object, which is supposed to warn 18:43
Rotwang arnsholt: I see, it makes sense, thanks 18:44
moritz diakopter: you kill java with fire, and send a SIGHUP to the run-rakudo-jvm-evalserver 18:47
18:48 iSlug left 18:49 virtualsue joined 18:55 btyler joined 18:57 [particle]1 left 19:01 risou_awy is now known as risou 19:04 tobyink joined
dalek ast: ff66768 | (Tobias Leich)++ | S12-methods/parallel-dispatch.t:
test for RT #77436
19:05
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=77436
19:06 Bucciarati_ is now known as Bucciarati 19:09 virtualsue left
masak wow. zefram++'s bug reports are awesome. 19:12
like the Baroque Cycle of RT tickets.
19:18 risou is now known as risou_awy 19:22 tobyink left 19:23 darutoko- left 19:25 rindolf left
jnthn OK, I may have found the JVM thingy 19:28
19:29 Mouq joined
jnthn oh, maybe not... 19:30
lue hello world o/ 19:33
FROGGS hi lue
19:33 Mouq left
lue trying to use a qx// in an Action method gets me this: "Error executing process: Cannot allocate memory" I'm not sure what to think. 19:34
FROGGS lue: what backend? 19:35
lue FROGGS: parrot 19:36
FROGGS hmmmm, is it possible that it will get called very often?
lue FROGGS: nope. It's the action method for an "include" statement, and the processed file has one of those statements. 19:37
FROGGS: also, there'— 19:38
FROGGS nqp-p: qx/echo 1/
camelia nqp-parrot: OUTPUT«Confused at line 2, near "qx/echo 1/"␤current instr.: 'panic' pc 16305 (gen/parrot/stage2/NQPHLL.pir:6018) (gen/parrot/stage2/NQPHLL.nqp:426)␤»
lue OK... switching around the qx// set variable and the function set variable so that the qx// appears before the function works. 19:39
The function uses qx// too, btw.
jnthn oh, I have I think...
FROGGS lue: I can't follow but nice to know :o)
uhh, ++jnthn 19:40
19:40 rurban left
lue FROGGS: "my $a = getfilename;␤my $b = qx/echo $STUFF/" --> memory allocation failure, "my $b = qx/echo $STUFF/;␤my $a = getfilename;" --> success . It's weird to say the least. 19:41
arnsholt Sounds like something's sensitive to memory layout 19:42
19:42 virtualsue joined
arnsholt Or something similar 19:42
FROGGS lue: what is your rakudo version?
19:42 cognominal left
FROGGS would be interesting to know if my nqp::spawn is in there or not 19:42
lue $ perl6 -v 19:43
This is perl6 version 2013.10-128-g1d15c6e built on parrot 5.9.0 revision RELEASE_5_9_0
19:43 rurban joined
lue FROGGS: ^^^ 19:43
FROGGS ahh yes 19:44
okay, my spawn is in there... :/
can't tell if that is to blame though
19:49 felher joined 19:55 rurban left
dalek p: 8f761f1 | (Tobias Leich)++ | docs/ops.markdown:
fix typo
19:57
p: a3cfc0f | (Tobias Leich)++ | docs/ops.markdown:
strip weird "f" at BOF
19:58
19:59 rurban joined 20:00 sahadev joined
timotimo how do i find out what's wrong with my Configure.pl? 20:06
20:08 woolfy left
moritz timotimo: why do you think there's something wrong with Configure.pl? 20:08
timotimo ===SORRY!===
Unable to read configuration from NQP on the JVM
benabik timotimo: Can you run nqp-j ?
timotimo but when i run the full path it mentions for nqp-j --show-config, it works
moritz timotimo: how do you invoke Configure.pl? 20:09
sahadev rakudo-parrot: my @list = (9, 3, 5, 2, 11, 1, 4); @list ==> grep {$_ > 3} ==> my @list2; say @list2.perl
camelia rakudo-parrot 84d2cb: OUTPUT«Array.new(9, 5, 11, 4)␤»
sahadev rakudo-parrot: my @list = (9, 3, 5, 2, 11, 1, 4); @list ==> sort ==> my @list2; say @list2.perl
camelia rakudo-parrot 84d2cb: OUTPUT«===SORRY!=== Error while compiling /tmp/i2uZbOKvLW␤Preceding context expects a term, but found infix ==> instead␤at /tmp/i2uZbOKvLW:1␤------> , 3, 5, 2, 11, 1, 4); @list ==> sort ==>⏏ my @list2; say @list2.perl[0…»
arnsholt timotimo: Complete and utter shot in the dark: Are there spaces in the path?
timotimo moritz: just "perl Configure.pl"
arnsholt: nope, i'm not crazy :)
nqp::version=2013.10-166-g54f6198 20:10
arnsholt Do you have a config.default?
dalek ast: 8b95783 | (Elizabeth Mattijsen)++ | S32-str/split.t:
Remove ~6 year old cruft
sahadev what is expected to follow "sort" when using it in a feed operator chain?
moritz p: my @list = (9, 3, 5, 2, 11, 1, 4); @list ==> sort() ==> say() 20:11
jnthn What to sort by?
camelia rakudo-parrot 84d2cb: OUTPUT«1 2 3 4 5 9 11␤»
jnthn well, or nothing
moritz sahadev: just writing parens seems to help
sahadev rakudo-parrot: my @list = (9, 3, 5, 2, 11, 1, 4); say @list.sort.perl 20:12
camelia rakudo-parrot 84d2cb: OUTPUT«(1, 2, 3, 4, 5, 9, 11)␤»
moritz timotimo: can you please nopaste the complete output, plus the output from nqp --show-config
sahadev jnthn: @list.sort does not expect any "sort-by" expression
dalek kudo/nom: 4ce2bfa | jnthn++ | src/vm/jvm/core/Threading.pm:
Avoid triggering JVM interop load at startup.

Was accidentally introduced when adding support for $*THREAD. This hopefully makes things less bad with the eval server.
timotimo moritz: sure 20:13
sahadev moritz: why are parens required?
moritz sahadev: ==> sort isn't a method call, but rather a subroutine call
sahadev: no idea
lizmat jnthn: am going to try that right away
timotimo gist.github.com/timo/ca805d742673454777c7
sahadev moritz: so, .sort is a method call, but ==> sort isn't? 20:15
moritz sahadev: correct
r: say sort 4, 1, 5 # not a method call either
camelia rakudo-parrot 84d2cb: OUTPUT«1 4 5␤»
..rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
20:16 ssutch left
sahadev @list ==> grep { ... } ==> @list2 doesn't have any problem; no parens required here. 20:16
moritz timotimo: my current hypothesis is that it's related to nqp-j being too old
timotimo too old? i just built it :o
moritz (but the error message sucks)
timotimo huh, what.
moritz nqp::version=2013.10-166-g54f6198
$ cat tools/build/NQP_REVISION 20:17
2013.10-178-gf42871d
so, 12 revisions too old
timotimo yeah, you're right, but why?
dalek p: ad26698 | (Tobias Leich)++ | docs/ops.markdown:
document sprintf* ops
moritz timotimo: dunno. How did you build it?
lizmat jnthn: seems like a winner to me so far
timotimo make all install
20:17 Mouq joined
timotimo i'll rebuild. 20:18
moritz don't just rebuild
git checkout master; git pull
then make install
timotimo i was on master :/
well, now i'm rebuilding 20:19
FROGGS one has to reconfigure so the nqp-* binary gets a new revision 20:21
timotimo oh
didn't know that!
FROGGS same for moar and perl6-* 20:22
moritz didn't know that either
lizmat jnthn: alas, seeing some "no subtests run" again :-(
FROGGS haha
timotimo thanks
FROGGS moritz: really? can't believe that
benabik Yeah, the version not updating on build kinda sucks because configure also does a clean, so it's a full rebuild just to get it to notice you're building a new version. 20:23
lizmat jnthn: and it also seems to slow down again
FROGGS benabik: true
lizmat jnthn: trying spectest again without parallel testing 20:26
jnthn lizmat: I'm into S32-io at present 20:27
lizmat: With 6 at a time
dalek kudo/nom: 069dc3a | moritz++ | docs/ROADMAP:
[ROADMAP] note that Buf depends on native int "is rw"
kudo/nom: 1607bc4 | moritz++ | / (2 files):
Merge branch 'nom' of github.com:rakudo/rakudo into nom
kudo/nom: 0faa636 | moritz++ | src/core/Mu.pm:
Merge branch 'nom' of github.com:rakudo/rakudo into nom
kudo/nom: 9c888d2 | moritz++ | src/ (3 files):
Merge branch 'nom' of github.com:rakudo/rakudo into nom
kudo/nom: 9b80284 | moritz++ | / (2 files):
try to fix error reporting when NQP is too old
moritz waaah, 3 useless merges
jnthn ohmergerd 20:29
timotimo :D
dalek kudo/nom: b02857c | moritz++ | .gitignore:
update .gitignore to new generated files
20:30
kudo/nom: 5bd51cb | moritz++ | .gitignore:
another .gitignore update
20:32
jnthn lizmat: My run has completed. 20:37
FROGGS j: say 1 20:38
camelia rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
lizmat mine is running without TEST_JOBS, so will take a little while stoll
*still
CPU usage seems normal
jnthn FROGGS: Maybe that gets better with my fix to help evalserver too 20:39
FROGGS jnthn: that is my expectation, since it got worse just lately
jnthn FROGGS: Yeach, my change that busted it was last week 20:40
20:41 woolfy joined 20:44 ssutch joined
lizmat CPU usage not dropping below 200% anymore :-( 20:45
peaks of up to 500%
20:45 kaare_ left
lizmat and that for serially doing all the tests :-( 20:45
timotimo well, that just means the GC is very good at parallelising 20:47
nqp-j is too old - but i just re-ran configure in my nqp/ checkout o_O 20:49
jnthn lizmat: I wonder if what you're actually seeing is it shell out
lizmat jnthn: failing again :-(
jnthn fuck
lizmat t/spec/S06-traits/is-copy.t .................................. No subtests run
jnthn wonders why not here...
20:50 Vlavv` left
jnthn Odd. It gets all the way thorugh. 20:50
For me.
lizmat it's gotten much better
FROGGS timotimo: but `git describe` tells about a new(er) version?
lizmat but the fix is only a gradual one, so it seems
timotimo 2013.10-203-g62e2415 - same version as the parrot one
jnthn And only 2 test files with notable failures, both related to deprecation...
lizmat indeed, that's because Backtrace is different / broken on jakudo ?
jnthn No such method 'package' for invocant of type 'Scalar' 20:51
Darn, still need to fix that error reporting...
lizmat killing it gives (again): 20:52
$ Java HotSpot(TM) 64-Bit Server VM warning: Exception java.lang.OutOfMemoryError occurred dispatching signal SIGINT to handler- the VM may need to be forcibly terminated
Exception in thread "Thread-0"
Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "Thread-0"
jnthn Oh, so it is running out of memory...
lizmat still 21 threads collecting garbage I guess
at ~400% CPU 20:53
and still running 20:54
20:55 Mouq left
lizmat hears from the grapevine there were 2 Perl 6 presentations at the Cluj.pm meeting this evening 20:56
jnthn Wow!
masak \o/ 20:57
masak .oO( those mongers seem really "clujed in" about Perl 6 ) 20:58
jnthn )) 20:59
Looks like it was on threading/async stuff :)
lizmat start stuff you mean? :-)
and still running (another half an hour of CPU burnt ;-) 21:00
killed -9 it 21:01
21:02 risou_awy is now known as risou, Vlavv` joined
lue
.oO(All I want is to call the Grammar from a particular statement in the Actions, and I'm being hit with can't assign to readonly variable or value.)
21:03
.oO(sigh... I can be such a moron sometimes. I'm guessing Grammar.parse(slurp($fn)) was the problem, yeah?)
21:04
21:05 virtualsue left
jnthn lizmat: oddness 21:06
lizmat re: Cluj.pm twitter.com/search?q=%23clujpm&src=hash
21:07 Rotwang left
woolfy Info about the cluj.pm meeting: cluj.pm/events/2013/10/clujpm-commu...again.html 21:07
jnthn woolfy++ 21:09
woolfy No no no... Mihai Pop++ Giving two talks about Perl 6 at cluj.pm meeting. Wow.
masak does this Mihai Pop person have an IRC presence? 21:10
jnthn Indeed
And on the shiny new async stuff
21:11 lemOn91 left
jnthn I wonder if he got the latest naming it. If so, his pres was probably more up to date than my Salzburg one :P 21:11
timotimo sounds shiny! :)
jnthn s/it/in/
woolfy masak: dunno 21:13
masak: he was one of the two send-a-newbie guys. He's very nice and very bright. I am sure it's not difficult to find him... 21:14
masak ooh
21:15 Rotwang joined
lue Foo::Actions.rule($/) { ... Foo::Grammar.parse() ... } breaks for me on that parse line with "Cannot assign to a readonly variable or a value", and I can't even begin to guess why. 21:17
21:18 risou is now known as risou_awy
jnthn lue: It tries to update the $/ which is a parameter, maybe? 21:18
colomon lue: you're calling your grammar from inside its actions?
lue that's the only RO variable I have, so that's likely it :) 21:19
colomon: "include" statement, XCompose files
I *could* set up a ast tree that holds info about the include that the receiving grammar user can then process with a new grammar call, but as long as I'm in the action method... 21:20
woolfy Mihai Pop on Twitter: twitter.com/MihaiPop10
21:23 rurban left, hummeleB1 joined
masak follows 21:24
21:26 dmol left, huf_ is now known as huf
dalek p: 1f83be8 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java:
Don't report bad method on Scalar, but on value.
21:32
21:32 rurban joined 21:36 rurban left 21:47 denis_boyun left
lizmat p: "abcdef".split('',:all).elems.say # 6 or 11 ? 21:47
camelia rakudo-parrot 5bd51c: OUTPUT«6␤»
lizmat currently, :all when splitting on empty string, is ignored 21:48
this is basically because the logic doesn't do any matching whatsoever
21:48 BenGoldberg joined
lizmat should this combination warn, die, or add dummy Match objects ? 21:49
diakopter p: "abcdef".split(1,:all).elems.say 21:52
camelia rakudo-parrot 5bd51c: OUTPUT«1␤»
21:54 rurban joined
diakopter p: "abcdef".split("abcdef",:all).say 21:54
camelia rakudo-parrot 5bd51c: OUTPUT« abcdef ␤»
lizmat p: "abcdef".split("abcdef").say 21:55
camelia rakudo-parrot 5bd51c: OUTPUT« ␤»
lizmat p: "abcdef".split("abcdef").elems.say
camelia rakudo-parrot 5bd51c: OUTPUT«2␤»
21:56 rurban1 joined 21:57 lue left 21:58 rurban left 22:00 lue joined 22:01 rurban1 left
FROGGS how do I specify an infix that only can take two args? 22:03
because infix:<...> currently gets three when invoked as: .say for 1, 2, 3 ... 10, 20, 30 ... 100 22:04
maybe I can steal from infix +
colomon FROGGS: infix:<new-op> ($a, $b) { …. } 22:05
timotimo it's when you give it list associativity?
FROGGS colomon: I mean how to do that in the grammar? so the QAST is produced correctly 22:06
colomon oh!
exactly two?
FROGGS yes
lizmat vaguely recalls some table somewhere
FROGGS lizmat: I see the table
rakudo/src/Perl6/Grammar.nqp:3049: Perl6::Grammar.O(':prec<t=>, :assoc<left>, :dba<additive>', '%additive');
colomon steal from infix:<+> would definitely be a good start :) 22:07
FROGGS maybe :assoc is in charge for that?
timotimo yes, i think so
FROGGS k
let's try :o)
colomon look for :assoc<list>
timotimo if you have :assoc<list> you get any amount of arguments
colomon right
FROGGS ... has that, yes
FROGGS changes it
colomon for infix:<…> you're changing it? 22:08
FROGGS yes
22:09 Mouq joined
colomon is not sure of the wisdom of that. 22:09
FROGGS we'll see 22:10
colomon emphasis on "not sure" rather than "knows it's a bad idea" 22:11
FROGGS *g*
22:12 virtualsue joined
diakopter p: "".split("", :all).perl.say 22:12
camelia rakudo-parrot 5bd51c: OUTPUT«Nil␤»
colomon FROGGS: did you check to see how std has it?
diakopter p: "".split("doobiedoobiedo", :all).perl.say
camelia rakudo-parrot 5bd51c: OUTPUT«("",).list␤»
FROGGS the other option would be to do it like niecza, and have an implementation of ... that can handle lists
colomon: it hast list assic 22:13
assoc
22:13 xinming_ joined
FROGGS cool, assoc<left> would actually fix it... 22:13
22:13 Mouq left
FROGGS but seems like a bad idea anyway... so, plan b 22:14
colomon if the grammar has it as list assoc, TimToady++ probably had a reason. 22:15
diakopter p: "".split("doobiedoobiedo", :all).elems.say 22:16
camelia rakudo-parrot 5bd51c: OUTPUT«1␤»
22:16 xinming left
lizmat diakopter: what is the pb with that last one? 22:17
dalek ast: 390c3b7 | (Elizabeth Mattijsen)++ | S32-str/split.t:
Some more thorough split testing
22:20
lizmat more to come tomorrrow, now sleep&
FROGGS gnight lizmat
timotimo so, about that commit bit again ...? :)
lizmat timotimo: pmichaud gave me mine, if I remember correctly 22:21
really sleep&
22:24 tobyink joined
timotimo i'd like to merge at least one pull request from mouq once i get the bit 22:25
FROGGS maybe preflex pmichaud ? (even when that sounds weird) 22:27
dalek ecs: 663d7e7 | raiph++ | S99-glossary.pod:
Fix sort order and add 'fossil' entry
22:29
timotimo preflex: tell pmichaud i'd love to claim my rakudo commitbit. the CLA should have arrived in the right place for that, wherever that is
preflex Consider it noted.
timotimo will do, thanks 22:30
dalek kudo-star-daily: 9ab5562 | coke++ | log/ (5 files):
today (automated commit)
22:31
timotimo make: /perl6: Command not found ;_; 22:33
that should probably be ./perl6-p?
[Coke] pretty sure that's coming from a "make modules-test" in the generated rakudo-star build. 22:34
timotimo ah, that may very well be
22:52 Rotwang left 22:59 rurban joined 23:01 virtualsue left 23:02 risou_awy is now known as risou
jnthn sleep & 23:04
23:06 Mouq joined 23:12 colomon left 23:13 rurban left
lue now sees $* vars as "the pan-grammar-rule variable type", but is sure that's not it :) 23:14
Mouq Isn't #120484 another #61602 plus some seemingly tangential things about error reporting in the repl? 23:15
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=120484
23:15 colomon joined
Mouq synopsebot: slacker. #61602 23:15
synopsebot Mouq: Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=61602
23:15 sitaktif left, sergot_ left 23:16 sergot joined
xenoterracide is it possible to create an anonymous class? 23:17
23:17 sitaktif joined
FROGGS Mouq: I think it is about the segfault only 23:17
p: my $thing = class { has $.foo }; say $thing.new 23:18
camelia rakudo-parrot 5bd51c: OUTPUT«<anon>.new(foo => Any)␤»
FROGGS xenoterracide: ^^
lue r: my Int $x = NaN
camelia rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
..rakudo-parrot 5bd51c: OUTPUT«Type check failed in assignment to '$x'; expected 'Int' but got 'Num'␤ in block at /tmp/TY6t8AIxbL:1␤ in any at /tmp/TY6t8AIxbL:1␤ in any at gen/parrot/stage2/NQPHLL.nqp:1146␤ in any eval at gen/parrot/stage2/NQPHLL.nqp:1133␤ in any eva…»
lue Mouq: #120484 is more REPL stupidity than #61602. It merely led to the new bug :) 23:19
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=120484
23:19 risou is now known as risou_awy
xenoterracide p: my $thing = class { has $.foo }.new; say $thing; 23:20
camelia rakudo-parrot 5bd51c: OUTPUT«===SORRY!=== Error while compiling /tmp/555kBO5ebu␤Two terms in a row␤at /tmp/555kBO5ebu:1␤------> my $thing = class { has $.foo }⏏.new; say $thing;␤ expecting any of:␤ scoped declarator␤ …»
timotimo yeah, you probably need to add parens around it
FROGGS p: my $thing = (class { has $.foo }).new; say $thing;
timotimo close them before the .new
camelia rakudo-parrot 5bd51c: OUTPUT«<anon>.new(foo => Any)␤»
FROGGS exactly
xenoterracide oh cool 23:21
FROGGS p: my $thing = (anon class { has $.foo }).new; say $thing;
camelia rakudo-parrot 5bd51c: OUTPUT«<anon>.new(foo => Any)␤»
FROGGS p: my $thing = (anon class Peter { has $.foo }).new; say $thing;
camelia rakudo-parrot 5bd51c: OUTPUT«Peter.new(foo => Any)␤»
FROGGS hehe 23:22
Mouq p: my $thing = (anon class Peter { has $.foo }).new; say $thing; Peter.new # checking
camelia rakudo-parrot 5bd51c: OUTPUT«===SORRY!=== Error while compiling /tmp/E_IDM8Iyg8␤Undeclared name:␤ Peter used at line 1␤␤»
Mouq cool
timotimo was about to do it, too :)
lue np: say [1,2,3] <=> [4,5,6,7]; say +([1,2,3] <=> [4,5,6,7]) 23:32
nr: say [1,2,3] <=> [4,5,6,7]; say +([1,2,3] <=> [4,5,6,7]) 23:33
camelia rakudo-parrot 5bd51c, niecza v24-98-g473bd20: OUTPUT«Increase␤-1␤»
..rakudo-jvm 882e33: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
lue ... I'm sure there's a perfectly good explanation for {Decrease => 1, Same => 0, Increase => -1}
timotimo p: say +Increase; say +Decrease; 23:34
camelia rakudo-parrot 5bd51c: OUTPUT«-1␤1␤»
FROGGS lue: if you sort, and it increases, you put the rhs one to the left (-1)
lue ? 23:35
FROGGS or the lhs?
I'm tired
Mouq So, #120484 doesn't appear to happen in nqp-p (though I think someone should verify this), though HLL::Complier.nqp has a CONTROL block in the try in method command_eval
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=120484
FROGGS p: say 5 cmp 7
camelia rakudo-parrot 5bd51c: OUTPUT«Increase␤»
FROGGS lhs 23:36
Mouq And, I *think* CONTROL catches ^D?
lue I'm afraid I still don't see the value of inverting the range like that :( 23:37
.oO(Increase = positive. Increase = -1 ‽)
FROGGS n: say +Increase; say +Decrease; 23:38
camelia niecza v24-98-g473bd20: OUTPUT«-1␤1␤»
Mouq …though I can't seem to get that to work
timotimo gtg :)
FROGGS from P5's perldoc: Binary "cmp" returns -1, 0, or 1 depending on whether the left argument is stringwise less than, equal to, or greater than the right argument. 23:39
so, -1 means lhs is less than rhs
less then == -1 here
huf sgn(a-b)
Mouq Oh, wait, does CONTROL catch things like return, next, etc? 23:41
lue FROGGS: that runs completely opposite my meanings of the words "Increase" and "Decrease" though. 23:42
FROGGS lue: yeah
lue FROGGS: Also, the words match the "from the LHS, do we (Decrease^Same^Increase) to the RHS?", but the numbers go "from the RHS, the change is in the direction of (1^0^-1) to the LHS"
Mouq p: try { next; CONTROL { say "oh" } }
camelia rakudo-parrot 5bd51c: OUTPUT«oh␤»
lue Which I steadfastly refuse to believe is appropriate. 23:43
FROGGS Mouq: this can't happen in nqp-*, because nqp ignores type constraints
Mouq Oh, I see, it only appears to happen then. Hrm 23:44
my Str $a = 4; does it too
23:45 eternaleye left
lue files STDbug 23:46
23:53 davecc joined
lue here we go: github.com/perl6/std/issues/6 23:54