Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-12-16

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:05 Psyche^ joined #perl6
00:19 erkan joined #perl6
00:19 erkan joined #perl6
00:31 aindilis` joined #perl6
00:52 bbkr joined #perl6
01:13 lichtkind joined #perl6
01:14 lichtkind any advent calendar people here?
01:15 twinshadow left #perl6
01:16 popl lichtkind: There are, but I don't know if they are here.
01:16 lichtkind that doesnt help now
01:16 popl If you address someone specifically they may come a-runnin'.
01:17 popl lichtkind: Was that a "answer the question I meant to ask, not the question I did ask" question?
01:17 popl I'm horrible at those.
01:19 dalek perl6-bench: 68e8f37 | (Geoffrey Broadwell)++ | TODO:
01:19 dalek perl6-bench: Clarify a Rakudo commit test TODO
01:19 dalek perl6-bench: review: https://github.com/japhb/pe​rl6-bench/commit/68e8f37589
01:19 lichtkind yes i just wanted see a yes im here
01:34 lichtkind popl: its allright
02:07 FROGGS__ joined #perl6
02:09 colomon I'm here
02:09 colomon oh, but lichtkind isn't.
02:20 lichtkind joined #perl6
02:21 lichtkind r: say "123.234.345.456" ~~ m:g/(\d+)/
02:21 p6eval rakudo cf2761: OUTPUT«False␤»
02:21 lichtkind why?
02:21 lichtkind there are digits
02:21 diakopter . is a digit?
02:21 diakopter oh
02:21 lichtkind so i am right :)
02:22 lichtkind r: say "123.234.345.456" ~~ m:g/(\d)+/
02:22 p6eval rakudo cf2761: OUTPUT«False␤»
02:22 diakopter r: say "123.234.345.456" ~~ m/(\d+)/
02:22 p6eval rakudo cf2761: OUTPUT«「123」␤ 0 => 「123」␤␤»
02:22 diakopter why do you need the :g ?
02:22 lichtkind yeah but global should be true either
02:23 lichtkind i need it for the calendar article
02:23 lichtkind it looks like a bug and i wanted report it
02:32 Rotwang left #perl6
02:32 lichtkind_ joined #perl6
02:33 fgomez joined #perl6
02:34 lichtkind_ joined #perl6
02:44 colomon nr: say "123.234.345.456" ~~ m:g/(\d)+/
02:44 p6eval rakudo cf2761: OUTPUT«False␤»
02:44 p6eval ..niecza v24-12-g8e50362: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Regex modifier g not yet implemented at /tmp/7egEAf_TD8 line 1:â�¤------> [32msay "123.234.345.456" ~~ m:g[33mâ��[31m/(\d)+/[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (di…
02:44 bpalmer left #perl6
02:44 colomon wouldn't something like
02:44 colomon nr: say "123.234.345.456".comb(/\d+/)
02:44 p6eval rakudo cf2761, niecza v24-12-g8e50362: OUTPUT«123 234 345 456␤»
02:45 colomon be simpler and actually work?
02:45 lichtkind great idea
02:45 lichtkind but still :g thing is a bog or?
02:45 lichtkind bug
02:46 diakopter I think it's a class 4 bog
02:46 lichtkind what is class 4?
02:46 diakopter not quite as big as a class 5
02:47 lichtkind omg bureaucracy is everywhere
02:47 lichtkind i have to kill myself
02:47 diakopter ... it was a joke
02:47 lichtkind mine too :)
02:53 deGirl joined #perl6
02:53 deGirl hhhhhhhhhh
02:53 diakopter ?
02:54 sorear welcome to #perl6, diakopter
02:54 sorear welcome to #perl6, deGirl
02:54 diakopter :)
03:02 timotimo that phaser blogpost opened my eyes to a few really great use cases, thanks jnthn!
03:11 lichtkind dalek: tell moritz dunno if its a bug but "123.234.345.456" ~~ m/\d+/; also fills $/
03:11 lichtkind tell moritz dunno if its a bug but "123.234.345.456" ~~ m/\d+/; also fills $/
03:46 telex joined #perl6
03:58 lue lichtkind: you want phenny, not dalek.
03:58 lichtkind ah theanks
03:58 lichtkind phenny: tell moritz dunno if its a bug but "123.234.345.456" ~~ m/\d+/; also fills $/ on rakudo
03:58 phenny lichtkind: I'll pass that on when moritz is around.
04:05 Targen joined #perl6
04:54 _jaldhar_ joined #perl6
05:06 aindilis` joined #perl6
05:16 skids joined #perl6
05:27 telex joined #perl6
06:11 TimToady masak: in t4, "cubes on integer coordinates" does not imply unit cubes, which seems to be what you're assuming in the tests.  you can even have integer-cornered cubes where the faces aren't lined up with the axes.  which would be an interestinger problem...
06:11 TimToady your tests seem to assume that if you know one corner, you know all the rest
06:12 TimToady but you dint say that
06:22 TimToady another unclear thing: suppose a solitary cube has a "roof" that only allows water to fall on one edge; does the cube produce its own waterfall only on that one edge, or does it produce waterfalls on all its edges?  that is, can an edge collect water for an entire cube's upper face?
06:23 lue On the "aligned with axes" uncertainty, I would assume/hope no-one would go through the trouble of trigonometry unless told to.
06:24 TimToady it ought to be specified anyhoo
06:24 lue nodnod
06:24 TimToady but even if aligned, one could have different sized cubes
06:24 TimToady and then the definitions are ambiguous a different way
06:25 TimToady suppose you have a 3x3x3 cube with a small cube touching the middle of one face on the side
06:25 TimToady the "watertight" rule only applies to shared edges, not an edge shared with a face
06:25 araujo joined #perl6
06:25 TimToady (which can't arise if we only have unit cubes, of course)
06:25 araujo joined #perl6
06:27 TimToady and, of course, if they are not just unit cubes, one might have to calculate intersections of cubes that might overlap :)
06:27 lue My interpretation of t4 has been perfectly-aligned unit cubes whose centers (.5mx.5mx.5m into the cube) are on the specified coordinates.
06:27 TimToady well, or a consistently picked corner
06:27 lue (aligned referring to the alignment between cube faces and axes planes)
06:31 lue .oO(how much water would need to be collected in a well for that well's floor to be pushed down enough to let the water escape?)
06:31 TimToady one could also misinterpret the problem as rooting all the cubes at 0,0,0 with the opposite corner specified as x,y,z, though that is admittedly a stretch
06:32 lue also, colliding faces
06:34 lue Here's another (very stretched) thing: where does the rain come from? "up" is just a word in this universe.
06:36 sorear lue: imagine an infinite Newtonian spacetime where the gravitational potential is just "gy"
06:36 sorear this is a valid free-space solution to the Poisson-equation form
06:37 sorear "The unit cubes are made out of open-cell foam.  Water drains through them."
06:40 lue one thing I was curious about when reading t4 (although it doesn't affect the solution): is the waterfall a normal thin "strip" of water, or is it a 1mx1mxNm stream?
06:52 sorear a stream.
07:10 masak TimToady: yes, I probably shoulda said "unit cubes" somewhere. they are definitely 1x1x1, which becomes evident when one sees the base tests, if not before.
07:11 masak TimToady: waterfalls don't just hit a corner of the cube, it hits the entire face. that's what the "chute" wording in the description is getting at.
07:11 * masak has breakfast, after which he will be trying to get back home to Sweden
07:15 masak lue: from description.md: 'The positive `y` coordinate means "up".'
07:16 lue masak: I was being particularly onerous at point. The point was "who's to say water comes from the 'up' direction in this universe?"
07:22 sorear masak is to say that
07:36 japhb lue: While it is fun to consider twisted gravity, I think up is by convention that direction from which things fall.  :-)
07:36 japhb .oO( Remember, the enemy's gate is down."
07:36 japhb s/"/ )/
07:45 SamuraiJack joined #perl6
08:04 arlinius joined #perl6
08:05 lue night #perl6 o/
08:13 GlitchMr joined #perl6
08:49 fgomez joined #perl6
09:00 kaare_ joined #perl6
09:08 tadzik good morning #perl6
09:12 GlitchMr I've done everything except for t3... now to think about t3. This could be difficult.
09:23 erkan joined #perl6
09:23 erkan joined #perl6
09:30 spider-mario joined #perl6
09:32 sorear good morning tadzik
09:47 Saaraa joined #perl6
09:59 moritz \o
09:59 phenny moritz: 03:58Z <lichtkind> tell moritz dunno if its a bug but "123.234.345.456" ~~ m/\d+/; also fills $/ on rakudo
09:59 moritz phenny: tell lichtkind not a bug
09:59 phenny moritz: I'll pass that on when lichtkind is around.
10:08 wamba joined #perl6
10:21 PacoAir joined #perl6
10:25 jnthn morning o/
10:30 eternaleye Okay, t3 is definitely my favorite of these. http://ix.io/3F0
10:30 eternaleye Mainly because a single word in the description was the key to my implementation.
10:31 eternaleye Also, always optimal.
10:32 eternaleye The only unfortunate thing is that gather/take seems to dominate my time (c.f. --profile)
10:34 eternaleye As in '80% of my runtime is attributed to eager'
10:35 eternaleye I suspect gather { take gather { take } } still has some optimization headroom.
10:35 eternaleye Either that or it needs some work on getting blamed for things it didn't do in --profile
10:36 jnthn eternaleye: Be careful of inclusive/exclusive there.
10:36 jnthn eternaleye: eager will look expensive inclusive because it does all of the work inside of it.
10:36 eternaleye jnthn: Mm, true, lemme check my settings
10:37 jnthn my @a = map { expensive stuff }, @blah; # the map just returns something lazy, and the mostly-eager list assignment calls eager and then the work happens, iirc.
10:38 eternaleye Hm, it may well be inclusive - I can't find a setting for switching in kcachegrind
10:38 jnthn In my kcachegrind there's an incl and self column
10:39 eternaleye Ah, I see. Thanks!
10:39 eternaleye Mm, there we go.
10:40 grondilu joined #perl6
10:41 eternaleye Okay, cool - looking at that, it basically comes down to 'Well, this line is the O in O(n^2)'
10:41 grondilu rn: my $x = [ * + 1, * *2 ]; say $x[]»(1);
10:41 p6eval niecza v24-12-g8e50362: OUTPUT«2 2␤»
10:41 p6eval ..rakudo cf2761: OUTPUT«Too many positional parameters passed; got 3 but expected 2␤  in sub METAOP_HYPER_POSTFIX at src/gen/CORE.setting:12578␤  in block  at /tmp/zGmfSBZGQG:1␤␤»
10:41 grondilu rn: my $x = [ * + 1, * *2 ]; say $x[]».(1);
10:41 p6eval rakudo cf2761, niecza v24-12-g8e50362: OUTPUT«2 2␤»
10:42 jnthn grondilu: hm, I think I'd have expected those two to behave the same way...
10:42 grondilu so would I have
10:42 eternaleye perl6: my $foo = ( 1, 2 ).map: [ * ]; $foo.perl.say
10:42 p6eval rakudo cf2761: OUTPUT«No such method 'count' for invocant of type 'Array'␤  in method reify at src/gen/CORE.setting:5474␤  in method reify at src/gen/CORE.setting:5397␤  in method gimme at src/gen/CORE.setting:5775␤  in method perl at src/gen/CORE.setting:5994␤  in block  at /tmp/ciq0TL…
10:42 p6eval ..niecza v24-12-g8e50362: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Array␤  at <unknown> line 0 (KERNEL map @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line 363 (Any.map @ 4) ␤  at /tmp/XZJC0hNHj8 line 1 (mainline @ 3) ␤  at /home/p6eval/niecza/l…
10:43 eternaleye ^^^ Is this intentional, or should this generate a pair of single-elem arrays?
10:44 jnthn map expects a block
10:44 eternaleye The Whatever seems to think it's in a subscript, when it's actually a placeholder
10:44 jnthn No, you can't use the whatever as a placeholder there
10:44 eternaleye jnthn: Yes, but you can also do (1, 2).map *+1
10:44 jnthn Yes, because + is an operator
10:44 eternaleye jnthn: Ah
10:44 jnthn [...] is a term that constructs an array
10:44 eternaleye Didn't realize that didn't apply to circumfix:<[ ]>
10:45 jnthn No, it doesn't
10:45 eternaleye Alright, thanks
10:45 jnthn So { [$_] } will work, for example
10:45 eternaleye Yep, that's what I've been doing
10:46 jnthn r: say (1..10).map(*.Array.item).perl
10:46 p6eval rakudo cf2761: OUTPUT«([1], [2], [3], [4], [5], [6], [7], [8], [9], [10]).list␤»
10:46 eternaleye (I just like the whatever-placeholder notation's concise nature)
10:46 jnthn There is *that* but...it's not in any way concise ;)
10:46 eternaleye :(
10:48 eternaleye Incidentally, I'm finding [X] to be a bit of a pain at times.
10:48 jnthn If you just want to single-list-itemize a bunch of things maybe .tree helps.
10:48 eternaleye It's rather hard to predict what it flattens before crossing in a Lol situation.
10:49 eternaleye I eventually had to unroll it into a for loop manually
10:50 jnthn r: my @a = 1,2,3; my @b = 4,5,6; say [X] @a, @b
10:50 p6eval rakudo cf2761: OUTPUT«1 2 3 4 5 6␤»
10:50 jnthn r: my @a = 1,2,3; my @b = 4,5,6; say [X] @a.item, @b.item
10:50 p6eval rakudo cf2761: OUTPUT«1 4 1 5 1 6 2 4 2 5 2 6 3 4 3 5 3 6␤»
10:50 jnthn It should be an item/flattening distinction
10:51 jnthn You can always force itemization with .item (or $(...))
10:51 jnthn back in a bit
10:52 eternaleye rakudo: my @foo = ( [1, 2, 3 ], [ 'a', 'b', 'c' ] ); ( [X] @foo ).perl.say
10:52 p6eval rakudo cf2761: OUTPUT«((1, "a"), (1, "b"), (1, "c"), (2, "a"), (2, "b"), (2, "c"), (3, "a"), (3, "b"), (3, "c")).list␤»
10:52 eternaleye Aaaaah
10:52 eternaleye It's the after-flattening that's biting me, not before
10:53 eternaleye rakudo: my @foo = ( [1, 2, 3 ], [ 'a', 'b', 'c' ] ); ( [X] @foo ).tree.perl.say
10:53 p6eval rakudo cf2761: OUTPUT«([1, "a"], [1, "b"], [1, "c"], [2, "a"], [2, "b"], [2, "c"], [3, "a"], [3, "b"], [3, "c"]).list␤»
10:53 eternaleye Bingo
11:02 FROGGS__ hi there
11:06 Su-Shee_ joined #perl6
11:06 eternaleye Whoo, and that saves me 6 lines on t1!
11:07 bowtie joined #perl6
11:16 * jnthn back
11:16 jnthn eternaleye: nice :)
11:16 eternaleye jnthn: Yep, and I'm working on fine-tuning my grammar actions to save lines too.
11:17 eternaleye (First time using action objects)
11:21 jnthn Remember you can even pass an anon class for the actions if you only use them in one place. ;)
11:21 jnthn (JSON::Path does that, though for scoping rather than line saving)
11:27 dalek rakudo/stdier: 3b71c87 | jnthn++ | src/Perl6/ (2 files):
11:27 dalek rakudo/stdier: Switch a couple of panic calls to worry.
11:27 dalek rakudo/stdier:
11:27 dalek rakudo/stdier: Again, doesn't behave differently yet.
11:27 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/3b71c87af7
11:29 eternaleye jnthn: Nope, I'm using a has %.smullyans to track who's spoken of whom ( to catch those referenced-but-not-speaking like the tests call for )
11:29 eternaleye So I reuse the actions per-line
11:29 eternaleye Mm, though...
11:29 jnthn ah, ok :)
11:30 eternaleye I wrote it as a per-line grammar when I thought the lines would be in argv, so making it whole-document might be a good idea...
11:30 eternaleye Not a huge change anyway
11:38 FROGGS karma jnthn
11:38 aloha jnthn has karma of 2869.
11:38 FROGGS hehe, nice
11:46 ggoebel_ joined #perl6
11:55 awwaiid joined #perl6
12:03 GlitchMr https://gist.github.com/4306619
12:03 GlitchMr So close, yet so far
12:03 GlitchMr Something is wrong with my problem detector when going down
12:09 sbox joined #perl6
12:09 GlitchMr https://gist.github.com/4306685
12:09 GlitchMr Closer, but still so far :-(
12:10 GlitchMr t3 is annoying
12:10 GlitchMr I'm sure something is wrong with problem detector. Perhaps one-by-one bug.
12:10 GlitchMr off-by-one*
12:11 Woodi japhb: you saw that one ?  http://xkcd.com/241/
12:11 Woodi hallo today :)
12:12 Woodi anyone thinked about putting 'restricted' into Parrot C code ?
12:16 sbox hi people
12:17 sbox has anyone run into a "Failed to load libpcre" when running the Configure.pl script?
12:17 FROGGS no
12:18 FROGGS ^-- sbox
12:19 jnthn Not heard that one before. Does it cause Configure to fail overall?
12:19 GlitchMr pcre is used for Perl 5 compatible regular expressions. Except I don't think that Perl 6 actually uses PCRE.
12:19 GlitchMr Even in :P5 mode
12:19 sbox yeh. It dies with "Command failed (status 512): gmake install-dev"
12:19 FROGGS sbox: is your perl executable working at all? test with: perl -e 'print 1'
12:20 GlitchMr Perl doesn't use PCRE
12:20 jnthn GlitchMr: Right, I think it's Parrot's Configure
12:20 jnthn sbox: What command are you running?
12:20 jnthn If it's the Rakudo Configure.pl, then try also adding
12:20 sbox perl Configure.pl --gen-parrot
12:20 jnthn yeah, OK, try adding:
12:20 jnthn --parrot-option=--without-pcre
12:20 jnthn Surprised that's needed, but hopefully it fixes it.
12:21 sbox thanks. Trying now.
12:21 GlitchMr Lack of PCRE could cause problems in certain Parrot languages, but it shouldn't cause problems with NQP or Perl 6.
12:22 GlitchMr I think that pcre is deprecated, so it should be safe - https://github.com/parrot/parrot/issues/637
12:23 sbox is my understanding that PCRE is used by non-perl languages to get perl-esque regex support correct?
12:24 jnthn sbox: Yeah. Parrot - the VM Rakudo Perl 6 compiler targets - provides it for other languages that want it. Rakudo just has its own regex implementation, however. Even for :P5 (Perl 5 mode).
12:24 GlitchMr PCRE? Not really. I don't think that many programming languages use it.
12:24 GlitchMr I think that PHP uses it and R programming language. Anything else?
12:25 GlitchMr I think that WebKit was using PCRE once, but it doesn't anymore.
12:32 Patterner wild guess: /usr/lib/libpcre.so is a linker script  (iirc that was problem with my gentoo)
12:33 jnthn heh...linker scripts, the things that also screw up NativeCall
12:33 jnthn What a great idea they must be. :)
12:36 sbox Patterner: can you elaborate please. (I happen to also be running gentoo)
12:37 birdwindupbird joined #perl6
12:38 FROGGS sbox: a .so (shared object) usually is a binary file, a library. but then someone invented these linker scripts, which should locate the real library and thus must be handled differently
12:38 GlitchMr https://gist.github.com/4306824
12:38 GlitchMr t3 :-)
12:38 FROGGS not all build tools can handle them
12:41 not_gerd joined #perl6
12:41 not_gerd hello, #perl6
12:41 FROGGS hi not_gerd
12:41 not_gerd re linker scripts: Ruby-FFI and GHC had the same problem
12:42 not_gerd https://github.com/ffi/ffi/pull/117 http://www.haskell.org/pipermail/​cvs-ghc/2009-December/051569.html
12:42 not_gerd someone should probably add that to dyncall
12:45 pmurias joined #perl6
12:46 sbox adding "-parrot-option=--without-pcre" stopped the error, but now I get a new error
12:46 sbox https://gist.github.com/4306854
12:46 sbox I was unclear on what exactly the error was from the printout.
12:49 GlitchMr Now for t4... if I think about it, the predictable rules look like those in Minecraft.
12:52 not_gerd sbox: did you run a parallel make?
12:52 not_gerd sou might need to build NQP (specifically, dyncall) with a single job
12:52 not_gerd ^you
12:52 jnthn not_gerd: Does dyncall have problems with parallel make?
12:52 sbox do you mean "-jx" where x > 1?
12:52 not_gerd sbox: yes
12:53 sbox yes
12:53 not_gerd jnthn: it used to on cygwin - no idea if it still does: I just use a single job for building NQP out of habit
12:53 * not_gerd tries it
12:54 not_gerd buildsys/gmake/targets.gmake:79: recipe for target `dyncall' failed
12:55 pmurias sbox: do the problems persist without a using parallel make?
12:56 sbox trying -j1 now
13:02 noggle joined #perl6
13:06 dalek rakudo/stdier: 5d659ff | jnthn++ | src/Perl6/Actions.pm:
13:06 dalek rakudo/stdier: Fix method name thinko.
13:06 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/5d659ff8d2
13:06 dalek rakudo/stdier: 93a1240 | jnthn++ | src/core/Exception.pm:
13:06 dalek rakudo/stdier: Add X::Comp::Group.
13:06 dalek rakudo/stdier:
13:06 dalek rakudo/stdier: It's used for when the compilation can produce multiple issues. With
13:06 dalek rakudo/stdier: this we'll be able to present those the parser can survive together,
13:06 dalek rakudo/stdier: rather than having the user have to get them one by one. Also will do
13:06 dalek rakudo/stdier: the rendering of warnings.
13:06 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/93a124091f
13:06 dalek rakudo/stdier: a5b78f7 | jnthn++ | src/Perl6/ (2 files):
13:06 dalek rakudo/stdier: Proper handling of sorry and worry.
13:06 dalek rakudo/stdier:
13:06 dalek rakudo/stdier: Makes worry just report the potential difficulties (so redeclaration
13:06 dalek rakudo/stdier: of a variable is just a warning now, as STD has it), and sorry keeps
13:06 dalek rakudo/stdier: going and just collects together the errors up to a limit, then gives
13:06 dalek rakudo/stdier: them at the end or when there's a panic. Slightly different factoring
13:06 dalek rakudo/stdier: to STD since we have typed exceptions, but produces the same kind of
13:06 dalek rakudo/stdier: output.
13:06 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/a5b78f7d34
13:07 jnthn phenny: tell moritz stdier now gets sorry/worry much more correct and introduces the X::Comp::Group we discussed. Review welcome, as is help triaging the few test regressions. :)
13:07 phenny jnthn: I'll pass that on when moritz is around.
13:13 Rotwang joined #perl6
13:14 spider-mario_ joined #perl6
13:14 MayDaniel joined #perl6
13:22 GlitchMr ok, now I'm going to test my entries in niecza and send them to masak's contest.
13:23 * not_gerd has sent an email to the dyncall devs about supporting fake dynamic libs
13:27 pmurias there's a new masak's contest?
13:27 GlitchMr Yes
13:27 GlitchMr pmurias: http://strangelyconsistent.org/bl​og/the-2012-perl-6-coding-contest
13:28 GlitchMr Unhandled exception: Unable to resolve method push in type Any
13:28 GlitchMr That could be fun
13:29 GlitchMr Unhandled exception: Unable to resolve method tree in type List
13:29 GlitchMr Now it could be really fun
13:29 GlitchMr .list appears to work only in Rakudo
13:29 GlitchMr .tree*
13:31 GlitchMr Regex modifier g not yet implemented
13:31 GlitchMr Fun. Making my entries working in Niecza could be fun
13:32 GlitchMr my %dict = 'dict'.IO.lines.classify: { +m:g:i/ <[aeiouy]>+ / };
13:32 GlitchMr Any idea how to fix it?
13:32 GlitchMr I only need number of matches, nothing else
13:35 not_gerd GlitchMr: +.comb(...) perhaps?
13:36 GlitchMr Seems to work
13:37 GlitchMr Now I've problem about .lines being in IO class.
13:37 GlitchMr not being in IO class*
13:39 jnthn GlitchMr: Note that if you find it hard to make a solution that works in both, multiple solution submissions for a problem are allowed. (Or they don't have to work on all implementations; I think a bunch submitted last year didn't work on both, for example.)
13:39 eternaleye GlitchMr: running t3 with 9876543210 is cool - and depending on your algorithm it might be a good test of worst-case performance
13:40 GlitchMr The 'any' listop may not be called without arguments (please use () or whitespace to clarify)
13:40 GlitchMr Interesting error message
13:40 GlitchMr std: any;
13:40 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0m�The 'any' listop may not be called without arguments (please use () or whitespace to clarify) at /tmp/yPSI6fkSfm line 1:�------> [32many[33m�[31m;[0m�Check failed�FAILED 00:00 41m�»
13:40 GlitchMr Good to know
13:41 eternaleye GlitchMr: I don't even have Niecza (mono itself is having build errors, so I can't even try installing niecza), so I'm only testing on Rakudo
13:41 eternaleye GlitchMr: Besides, the rules text is: Both Rakudo and Niecza are appropriate platforms for developing solutions for the contest, and we're flexible as to under which version/release you've written your code.
13:41 GlitchMr Stack overflow: IP: 0x40696a86
13:41 GlitchMr That could be fun
13:41 eternaleye Which implies either acceptable, neither required
13:43 not_gerd GlitchMr: open('dict').lines should work (but probably leaks a file handle until program termination)
13:50 not_gerd bye, #perl6
13:50 not_gerd left #perl6
13:52 sbox perl6 compiled :) thanks for the help
13:53 GlitchMr ok, I've sent my solutions to masak. This was fun contest.
14:01 GlitchMr https://gist.github.com/4307562
14:01 GlitchMr BINARY!
14:07 eternaleye Hey, is $*IN.lines eager? I just decided to feed my t3 entry a full list of all permutations just for kicks on STDIN, but it seems to wait until EOF to start iterating.
14:07 eternaleye Since the docs say for $*IN.lines ought to be lazy, and is the recommended method of looping over input...
14:08 jnthn Think it's meant to be, but I think it was a bit off somewhere
14:09 jnthn I think pmichaud++ was looking into that last time he had tuits.
14:09 eternaleye I'm completely confident it's meant to be (synopses and various other docs all agree, and my memory back a few years does as well)
14:09 jnthn Or maybe it was some other laziness issue...
14:09 jnthn I know there's some places where MapIter may not be as lazy as it should be.
14:11 eternaleye On the other hand, I found a cool idiom for 'Take arguments from the commandline, but if none are given read them from STDIN' - MAIN( *@foo ) { @foo := $*IN.lines unless +@foo; ... }
14:12 eternaleye ( which I just realized implies it's for @array that isn't lazy )
14:14 eternaleye Mm, no, since binding wouldn't flatten it anyway. It's container-level.
14:39 dalek rakudo-js: fdbeaec | (Paweł Murias)++ | run_tests:
14:39 dalek rakudo-js: turn a list of tests into a test range
14:39 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/fdbeaec6b0
14:39 dalek rakudo-js: 0503334 | (Paweł Murias)++ | src/QAST/Compiler/JavaScript.nqp:
14:39 dalek rakudo-js: [nqp] refactor the handling of signatures
14:39 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/0503334483
14:39 dalek rakudo-js: a83455a | (Paweł Murias)++ | src/QAST/Compiler/JavaScript.nqp:
14:39 dalek rakudo-js: [nqp] params are added in as_js
14:39 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/a83455a16c
14:39 dalek rakudo-js: bed1be7 | (Paweł Murias)++ | src/QAST/Compiler/JavaScript.nqp:
14:39 dalek rakudo-js: refactor the way declarations are moved to the top
14:39 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/bed1be7449
14:39 dalek rakudo-js: 624f0de | (Paweł Murias)++ | / (2 files):
14:39 dalek rakudo-js: [nqp] pass test 48, handle lexotic better
14:40 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/624f0de53f
14:45 rindolf joined #perl6
14:51 hyy joined #perl6
14:55 lichtkind joined #perl6
15:05 stevan_ joined #perl6
15:12 wamba joined #perl6
15:16 asdssq231 joined #perl6
15:25 swanstomp joined #perl6
15:27 jnthn std: foo; if 1 { foo; sub foo() { } }
15:27 p6eval std a8bc48f: OUTPUT«ok 00:00 44m␤»
15:27 jnthn TimToady: Seems %*MYSTERY handling ain't quite right
15:28 sbox joined #perl6
15:32 timotimo is there a way in the perlbug rt to say "i'm only ever interested in the perl6 queue"? especially in the "rt at a glance" page? when i sort by queue, i get no results at all instead of all perl6 first, then all perl5 ones
15:39 grondilu masak: line 36 in https://github.com/masak/p6cc2​012/blame/master/t1/base-test, shouldn't you write 'No solution' instead of 'No solutions'?  I know it's not important but it's nagging me.
15:45 benabik joined #perl6
15:50 timotimo i'm trying to write up a test for https://rt.perl.org/rt3/Ti​cket/Display.html?id=81974 that is sensible. when i do my $fail = try { .say for (0, {last if $^a==$^b; (1..5).pick} ... *) }; i get an X::AdHoc for "not enough positional arguments". should I create a new typed exception for positional argument count mismatch, throw it for this error message and test for it to be returned?
15:50 timotimo (otherwise, this bug seems semi-fixed)
15:50 timotimo which it seems like moritz++ already noticed in may
15:51 timotimo alternatively, i could check is try { ... } ~~ X::AdHoc, but that doesn't seem right to me.
15:51 timotimo er, probably better to check against Exception (is that X::Exception?)
15:52 FROGGS no, just Exception
15:52 FROGGS checking against X::AdHoc isnt ideal because you dont know what exception it is
15:52 timotimo so in what way does it check that the error message is helpful?
15:52 jnthn It'd be nice to have a typed exception here
15:53 FROGGS so, creating a new typed one and checking for that should be the right
15:53 jnthn But it means twiddling C code to make it construct/throw one.
15:53 timotimo i didn't compile an old enough rakudo, but it would seem i would have gotten an Exception there, too.
15:53 timotimo what, C code?
15:53 timotimo i didn't sign up for that! ;)
15:53 jnthn timotimo: Yes, becasue the signature binder is written in C :)
15:53 FROGGS hehe
15:53 jnthn It's one of the few small parts that are :)
15:54 timotimo well, if there's example code for constructing and throwing exceptions, i guess i could somehow do it
15:54 dalek rakudo/stdier: 2ac61b5 | jnthn++ | src/Perl6/ (2 files):
15:54 dalek rakudo/stdier: Start recording mystery symbols.
15:54 dalek rakudo/stdier:
15:54 dalek rakudo/stdier: Factored in a similar way to %*MYSTERY in STD. However, it keyed just
15:54 dalek rakudo/stdier: on name. This isn't quite enough, as it fails to distinguish the same
15:54 dalek rakudo/stdier: names in different scopes, meaning mysteries can be resolved wrongly.
15:54 dalek rakudo/stdier: To avoid this, we'll try keying on name and scope ID in Rakudo, so we
15:54 dalek rakudo/stdier: collect together obvious dupes, but hopefully can get righter results.
15:54 dalek rakudo/stdier:
15:54 dalek rakudo/stdier: Information not used for anything just yet.
15:54 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/2ac61b530a
15:54 jnthn timotimo: I think moritz and I had the idea of punting the real construction to Perl 6, and just having a special hash of handlers somewhere that we just invoke with arguments.
15:55 timotimo okay, that's way too internalsy for me at this point.
15:55 jnthn Not sure there's any good examples yet, as a result...
15:55 jnthn Yeah, there's nothing I can really point you at and say "copy this" yet.
15:56 timotimo i'll look at another bug then :)
15:56 timotimo not like there aren't enough old bugs
15:56 timotimo https://rt.perl.org/rt3/Ti​cket/Display.html?id=81058 - this one got even worse, now i get a null PMC access error :D
15:57 jnthn huh?
15:57 jnthn r: class A is A {}; say A.new
15:58 p6eval rakudo cf2761: OUTPUT«[31m===[0mSORRY![31m===[0m�Cannot call 'trait_mod:<is>'; none of these signatures match:�:(Mu:U $child, Mu:U $parent)�:(Attribute:D $attr, :rw(:$rw)!)�:(Attribute:D $attr, :readonly(:$readonly)!)�:(Attribute:D $attr, :box_target(:$box_target)!)�:(Routine:D $r, …
15:59 jnthn r: class A { also is A; }; say A.new
15:59 p6eval rakudo cf2761: OUTPUT«maximum recursion depth exceeded␤current instr.: 'print_exception' pc 89215 (src/gen/CORE.setting.pir:42832) (src/gen/CORE.setting:9270)␤called from Sub 'compute_mro' pc 7898 (src/gen/perl6-metamodel.pir:3866) (src/gen/Metamodel.pm:755)␤called from Sub 'mro' pc 923…
15:59 jnthn Whee
15:59 timotimo oh? in that case i must have a broken perl6 interpreter locally?
15:59 jnthn That'd be odd
15:59 jnthn Oh
15:59 jnthn I can reproduce the NPMCA...but only at the REPL
16:00 timotimo ... or that :)
16:01 jnthn mebbe I can do something about that error...but wanna get this mystery work done first
16:01 moritz \o
16:01 phenny moritz: 13:07Z <jnthn> tell moritz stdier now gets sorry/worry much more correct and introduces the X::Comp::Group we discussed. Review welcome, as is help triaging the few test regressions. :)
16:02 stevan_ joined #perl6
16:02 Chillance joined #perl6
16:02 moritz I guess I'll teach throws_like to look into X::Comp::Group objects
16:02 jnthn moritz: +1. There are thankfully few failures, but I suspect they may increase when we start worrying about unused variables.
16:03 jnthn Not sure if I get that in this side of the release or not.
16:04 timotimo htop
16:04 timotimo ... nope, not in the irc chat! :D
16:05 moritz jnthn: I think X::Comp::Group should do X::Comp
16:05 anuby_h joined #perl6
16:06 jnthn moritz: I pondered it then felt it was wrong because X::Comp implies a bunch of properties
16:06 moritz hm, or maybe not
16:06 jnthn moritz: And we don't set them.
16:07 jnthn I can sorta see why we want it for the label
16:07 jnthn But we don't have the various attrs
16:07 jnthn Since it's not really an exception so much as a container of them...
16:07 moritz maybe in the long run, it needs to be split into two roles
16:07 jnthn Yeah, I pondered that, but it wasn't immediately obvious how that'd work.
16:07 jnthn Mostly from a naming point of view.
16:08 moritz same here
16:08 moritz I'd say we go along as it is right now
16:08 jnthn wfm
16:08 moritz and maybe in time the right solution becomes obvious
16:14 hoelzro I updated my advent post for tomorrow if anyone wants to review it
16:15 masak good evening, #perl6.
16:16 jnthn welcome back, masak
16:16 hoelzro o/
16:17 jnthn moritz: I'm working on mystery at the moment. I'm thinking of adding a typed exception that captures the various problems. Or would you prefer we have multiple of them?
16:18 jnthn moritz: It categories them into post-declared types, undeclared probably-types (upper case first char) and undeclared probably-routines.
16:23 moritz jnthn: sounds like one or more subclasses from X::Undeclared
16:24 moritz but I don't have a good feeling whether one or more should be there
16:27 jnthn Yeah
16:27 jnthn std: foo
16:27 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0m�Undeclared routine:� 'foo' used at line 1�Check failed�FAILED 00:00 41m�»
16:27 jnthn std: foo; bar
16:27 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared routines:â�¤        'bar' used at line 1â�¤   'foo' used at line 1â�¤Check failedâ�¤FAILED 00:00 41mâ�¤Â»
16:28 jnthn That's how STD does it
16:28 jnthn std: foo; bar; Baz.new
16:28 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    'Baz' used at line 1â�¤Undeclared routines:â�¤      'bar' used at line 1â�¤   'foo' used at line 1â�¤Check failedâ�¤FAILED 00:00 41mâ�¤Â»
16:28 jnthn std: foo; Bar.new; Baz.new; class Baz { }
16:28 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Illegally post-declared type:â�¤       'Baz' used at line 1â�¤Undeclared name:â�¤  'Bar' used at line 1â�¤Undeclared routine:â�¤       'foo' used at line 1â�¤Check failedâ�¤FAILED 00:00 42mâ�¤Â»
16:28 jnthn Those're the 3 categories
16:29 jnthn Guess I do it as a single exception for now.
16:29 stevan_ joined #perl6
16:31 dalek roast: b5ce7a2 | (Timo Paulssen)++ | S05-transliteration/trans.t:
16:31 dalek roast: added a small test case for RT #83766
16:31 dalek roast: review: https://github.com/perl6/roast/commit/b5ce7a2b97
16:39 jnthn What on earth is an unk?
16:39 jnthn my %unk_types;
16:39 moritz unknown types
16:40 jnthn Oh, UNKown!
16:40 jnthn *UNKnown
16:40 jnthn heh, why'd I not see that :)
16:40 moritz phenny: de en "unke"?
16:40 phenny moritz: "toad" (de to en, translate.google.com)
16:40 moritz .oO( toad types )
16:41 moritz .oO (timTOADy :-)
16:41 jnthn :D
16:43 benabik uncle types?
16:43 masak use TOAD_TYPING;
16:44 masak phenny: sv en "unken"?
16:44 phenny masak: "stale" (sv to en, translate.google.com)
16:45 jnthn phenny: "unk"?
16:45 phenny jnthn: "unk" (en to en, translate.google.com)
16:45 jnthn aww :)
16:45 * jnthn hoped for a funny mystery word :)
16:47 masak grondilu: re 'No solution' vs 'No solutions', I think both are correct. I did stop and think before choosing the latter.
16:47 masak grondilu: if I hadn't allowed multiple solutions, I would probably have gone with 'No solution'.
16:53 masak sorear: would you be interested in me compiling a list of features that p6cc2012 contestants use that make a solution work in Rakudo but not in Niecza?
16:53 masak hm, because of possible conflicts of interest, I can't share it with you until 2013-01-18 :)
16:53 jnthn masak: I'd be interested in one that works the opposite way around, fwiw.
16:53 masak but I could build it as solutions come in.
16:54 stanley joined #perl6
16:54 masak jnthn: noted. will do.
16:58 bbkr_ joined #perl6
17:05 marloshouse joined #perl6
17:15 [Coke] ]
17:15 [Coke] ~.
17:15 [Coke]
17:16 masak [Coke]: ]: command not found
17:17 masak [Coke]: ~.: command not found
17:17 jnthn r: ]
17:17 p6eval rakudo cf2761: OUTPUT«[31m===[0mSORRY![31m===[0m�Unexpected closing bracket�at /tmp/OoqF_vpWNl:1�------> [32m<BOL>[33m�[31m][0m�»
17:17 jnthn :)
17:21 timotimo what do i have to look for to find the .perl method for Pair?
17:22 jnthn timotimo: Start in src/core/Pair.pm, if it's not in there it may be inherited (src/core/Enum.pm iirc)
17:22 * masak .oO( because pairs are totally a kind of enum )
17:23 timotimo thanks :)
17:24 timotimo there it is, that was so easy i didn't even think of it
17:24 jnthn r: if Pair ~~ Enum { say "Sure they are, masak" }
17:24 p6eval rakudo cf2761: OUTPUT«Sure they are, masak␤»
17:24 masak grr
17:24 masak well, I guess all languages have their quirks.
17:25 * timotimo is trying to make (0 => 1) => 2 .perlify correctly
17:26 timotimo my first attempt is to see if .key ~~ Pair, because if that's the case, it would have to be parenthesized, but that may not be enough yet
17:29 timotimo > (((0 => 1) => 2) => 3).perl, (0 => 1 => 2 => 3).perl  -->  ((0 => 1) => 2) => 3 0 => 1 => 2 => 3
17:31 jnthn timotimo: I'd check ~~ Enum
17:31 timotimo i'ven't done anything with Enum in perl6 before. should it do the same check, too?
17:31 benabik joined #perl6
17:32 jnthn timotimo: Enum is for immutable pairs, and I guess if they .perl the same way they you shoudl check them the same way
17:32 jnthn Just checking .key ~~ Enum rather than .key ~~ Pair should be sufficient.
17:32 timotimo yup, i'll move the code back to Enum.perl then
17:33 timotimo i guess i should write some tests to make sure the .perl does correct parens?
17:35 stevan_ joined #perl6
17:36 kivutar joined #perl6
17:49 dalek roast: d925c3a | (Timo Paulssen)++ | S05-transliteration/trans.t:
17:49 dalek roast: forgot to bump up the plan
17:49 dalek roast: review: https://github.com/perl6/roast/commit/d925c3a744
17:51 SamuraiJack joined #perl6
18:01 dalek roast: 70d13c4 | (Timo Paulssen)++ | S05-transliteration/trans.t:
18:01 dalek roast: i heard testing your tests before commiting helps ...
18:01 dalek roast: review: https://github.com/perl6/roast/commit/70d13c48a5
18:08 timotimo n: (0 => 1) => 2
18:08 p6eval niecza v24-12-g8e50362:  ( no output )
18:08 timotimo n: say ((0 => 1) => 2).perl
18:08 p6eval niecza v24-12-g8e50362: OUTPUT«0 => 1 => 2␤»
18:09 dalek rakudo/stdier: dcc1f94 | jnthn++ | src/core/Exception.pm:
18:09 dalek rakudo/stdier: Add X::Undeclared::Symbols for reporting mystery.
18:09 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/dcc1f94536
18:09 dalek rakudo/stdier: 72118ee | jnthn++ | src/Perl6/ (2 files):
18:09 dalek rakudo/stdier: Use %*MYSTERY to report [un|post]declared symbols.
18:09 dalek rakudo/stdier:
18:09 dalek rakudo/stdier: Means we can correctly report post-declared types and give better
18:09 dalek rakudo/stdier: output, much closer to how STD has it. A couple of regressions in
18:09 dalek rakudo/stdier: spectest.
18:09 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/72118eeb49
18:09 benabik joined #perl6
18:15 jnthn dinner, bbl
18:24 FROGGS jnthn: is there a way to get the classes, roles, modules and packages that are defined in a given file?
18:26 FROGGS I wanna make a mapping, so that I get for example: { "Foo" : "lib/Foo.pm", "Foo::Bar" : "lib/Foo.pm" }
18:28 timotimo on a mildly related note: could perl6 --doc be made to search for libraries as well as files in the current directory? i'd like to do something like perl6 --doc Test
18:28 benabik +1
18:29 FROGGS timotimo: what about: PERL6LIB=. perl6 --doc Test
18:30 timotimo that's the wrong way around :)
18:30 FROGGS ahh, so it already just uses the current dir?
18:30 timotimo i'd like to not have to search for Test.pm and use the full path
18:30 timotimo yes, exactly
18:30 FROGGS ahh, my fault
18:31 timotimo is there some inspection that gives me the filename the module was loaded from? in python i could just import Test; help(Test);
18:32 FROGGS I dont know, but I am very interested in this
18:36 moritz r: use Test; say %*INC<Test>;
18:36 p6eval rakudo cf2761: OUTPUT«postcircumfix:<{ }> not defined for type Failure␤  in method gist at src/gen/CORE.setting:10199␤  in sub say at src/gen/CORE.setting:7476␤  in block  at /tmp/yr4DuTvQtb:1␤␤»
18:37 moritz hm
18:38 moritz there's a lexical %modules_loaded in Perl6::ModuleLoader
18:38 FROGGS r: use Test; say %*CUSTOM_LIB<Test>;
18:38 moritz but it's not exported in any way
18:38 p6eval rakudo cf2761: OUTPUT«Any()␤»
18:38 moritz nah, that's only related to the search path
18:38 SamuraiJack_ joined #perl6
18:43 jnthn FROGGS: Well, there's looking at what it exports...
18:43 timotimo hah, GGE.
18:44 timotimo i'm looking at an old bug that requires GGE for a test case, but GGE won't compile any more
18:44 timotimo and GGE is pretty amusing
18:44 FROGGS jnthn: how do I do that? eval the file? but how to get the exports?
18:45 jnthn FROGGS: Yeah, that's what I'm not sure about. I mean, the module loader gets hold of the module's UNIT and then can look at EXPORT and GLOBALish
18:46 jnthn I'm not sure we've a way from userspace to say "load this thing as a mdoule and give me UNIT"
18:47 timotimo so, should i commit the code that makes pairs and enums .perl correctly with parens if needed and mark the RT with "testneeded"? or can you tell me where tests for that behavior fit in the spectest directory tree?
18:48 jnthn timotimo: S02-types/nested_pairs.t seems like one could option
18:48 Rotwang hi, is this https://github.com/perl6/book still developed?
18:49 Rotwang or written or whatever
18:49 timotimo thanks!
18:49 timotimo Rotwang: occasionally there are issues and patches that are put in, but there's not much active development at the moment (see the commit history)
18:50 Rotwang yeah I noticed, but there is no better alternative
18:50 Rotwang except for jumping around google
18:52 masak the perl6/book effort has stalled, yes.
18:54 mtk joined #perl6
18:58 jerome joined #perl6
18:58 timotimo http://t.h8.lv/0001-properly-.​perl-nested-Enums-Pairs.patch - would like to have this committed to the rakudo nom branch
18:59 dalek roast: 0296255 | (Timo Paulssen)++ | S02-types/nested_pairs.t:
18:59 dalek roast: test for left-nested pairs and .perl method
18:59 dalek roast: review: https://github.com/perl6/roast/commit/0296255893
19:00 jnthn std: sub foo { }; foo:bar;
19:00 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0m�Undeclared routine:� 'foo:bar' used at line 1�Check failed�FAILED 00:00 42m�»
19:02 cognominal joined #perl6
19:04 quester joined #perl6
19:06 moritz nr: my $p = a => 2; say value %p
19:06 p6eval niecza v24-12-g8e50362: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Variable %p is not predeclared at /tmp/X7Op3F7QSA line 1:â�¤------> [32mmy $p = a => 2; say value [33mâ��[31m%p[0mâ�¤â�¤Undeclared routine:â�¤ 'value' used at line 1â�¤â�¤Potential difficulties:â�¤  $p is declared but not used at /tmp/X…
19:06 p6eval ..rakudo cf2761: OUTPUT«[31m===[0mSORRY![31m===[0m�Variable %p is not declared�at /tmp/zns0Z4CN6G:1�------> [32mmy $p = a => 2; say value %p[33m�[31m<EOL>[0m�»
19:06 moritz nr: my $p = a => 2; say value $p
19:06 p6eval rakudo cf2761: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&value' called (line 1)␤»
19:06 p6eval ..niecza v24-12-g8e50362: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤     'value' used at line 1â�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5) â�¤  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) â�¤  at /ho…
19:08 masak how does one know whether a method has a corresponding sub form in Perl 6?
19:10 moritz if it's a built-in sub in Perl 5, it has a sub form in Perl 6
19:10 moritz nr: say values { a => 1, b => 0 }
19:10 p6eval rakudo cf2761, niecza v24-12-g8e50362: OUTPUT«1 0␤»
19:22 benabik joined #perl6
19:26 dalek roast: 7bec724 | jnthn++ | S02-literals/sub-calls.t:
19:26 dalek roast: Correct a test with non-STD expectations.
19:26 dalek roast: review: https://github.com/perl6/roast/commit/7bec724eda
19:26 dalek roast: a836740 | jnthn++ | S02-magicals/sub.t:
19:26 dalek roast: Toss a wrong test.
19:26 dalek roast: review: https://github.com/perl6/roast/commit/a83674057f
19:26 dalek roast: f572ea5 | jnthn++ | S02-types/sigils-and-types.t:
19:26 dalek roast: Correct some long-broken tests.
19:26 dalek roast:
19:26 dalek roast: Spotted 'cus mystery implementation makes them die, not just fail.
19:26 dalek roast: review: https://github.com/perl6/roast/commit/f572ea5be9
19:26 dalek roast: 6a4a651 | jnthn++ | S11-modules/importing.t:
19:26 dalek roast: &foo now causes compile time error if undefined.
19:26 dalek roast: review: https://github.com/perl6/roast/commit/6a4a65177d
19:28 dalek rakudo/stdier: 2a36be0 | jnthn++ | src/core/Exception.pm:
19:28 dalek rakudo/stdier: Make sure .message works as well as .gist.
19:28 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/2a36be0de2
19:29 jnthn timotimo: Have grabbed it; will look in a little bit (just tracking down some fails in stdier branch at the moment)
19:30 timotimo jnthn: thanks :)
19:32 jnthn std: my $!
19:32 p6eval std a8bc48f: OUTPUT«Potential difficulties:â�¤  Useless redeclaration of variable $! (see line 1) at /tmp/sX61C6HmTY line 1:â�¤------> [32mmy $![33mâ��[31m<EOL>[0mâ�¤ok 00:00 41mâ�¤Â»
19:35 jnthn std: /<[a-z]>/
19:35 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of - as character range; in Perl 6 please use .. (or \- if you mean a literal hyphen) at /tmp/CYqp6yJYXa line 1:�------> [32m/<[a-z[33m�[31m]>/[0m�Parse failed�FAILED 00:00 42m�»
19:36 popl joined #perl6
19:38 jnthn std: my @a; my @a
19:38 p6eval std a8bc48f: OUTPUT«Potential difficulties:â�¤  Useless redeclaration of variable @a (see line 1) at /tmp/GXfs_ODni4 line 1:â�¤------> [32mmy @a; my @a[33mâ��[31m<EOL>[0mâ�¤ok 00:00 42mâ�¤Â»
19:40 jnthn r: my $foo does &Int
19:40 p6eval rakudo cf2761: OUTPUT«Cannot use 'does' operator with a type object.␤  in sub infix:<does> at src/gen/CORE.setting:12063␤  in block  at /tmp/CPgOTi24xy:1␤␤»
19:40 jnthn std: my $foo does &Int
19:40 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Invalid role name at /tmp/wxcxFz7RhS line 1:â�¤------> [32mmy $foo does [33mâ��[31m&Int[0mâ�¤    expecting typenameâ�¤Parse failedâ�¤FAILED 00:00 41mâ�¤Â»
19:42 timotimo i wonder if optimising "if $my-really-quite-long-string.index("maybe in there or maybe not") < 20 { say "it's near the beginning!" }" to lazily break off the search after 20 characters would be of any value whatsoever
19:57 cognominal joined #perl6
19:58 dalek roast: c8c7505 | jnthn++ | S02-names-vars/varnames.t:
19:58 dalek roast: Align test with STD.
19:58 dalek roast: review: https://github.com/perl6/roast/commit/c8c7505a9d
19:58 dalek roast: a52f2b3 | jnthn++ | S32-exceptions/misc.t:
19:58 dalek roast: A few minor tweaks for stdier.
19:58 dalek roast: review: https://github.com/perl6/roast/commit/a52f2b3467
20:00 dalek rakudo/stdier: 0793547 | jnthn++ | src/Perl6/Grammar.pm:
20:00 dalek rakudo/stdier: Missing return values.
20:00 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/0793547845
20:00 dalek rakudo/stdier: 62a696f | jnthn++ | src/Perl6/Grammar.pm:
20:00 dalek rakudo/stdier: Remove unrequired space.
20:00 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/62a696f532
20:00 dalek rakudo/stdier: a03049e | jnthn++ | src/Perl6/Grammar.pm:
20:00 dalek rakudo/stdier: Move a sorry back to a panic for now.
20:00 dalek rakudo/stdier:
20:00 dalek rakudo/stdier: Follow-up error actually seems to be worse, and STD spits internal
20:00 dalek rakudo/stdier: errors on a program just containing "@" anyway.
20:00 dalek rakudo/stdier: review: https://github.com/rakudo/rakudo/commit/a03049eece
20:02 jnthn moritz: Triaged all the things :)
20:02 jnthn moritz: Without having to get throws_like updated, but it's probably still a good idea...
20:03 dalek Heuristic branch merge: pushed 16 commits to rakudo/nom by jnthn
20:06 cognominal_ joined #perl6
20:06 kaare__ joined #perl6
20:06 jnthn Aside from the better errors, the above merge does two things of note...
20:07 jnthn 1) &foo is now an error if you didn't declare foo some time. Just like in STD, and as promised in the deprecations notice put out last release.
20:07 masak \o/
20:07 jnthn 2) my $a; my $a; is just a warning now, not an error, like STD too.
20:07 masak \o/
20:07 masak jnthn++
20:07 jnthn Main error message change is that you can now get multiple errors out.
20:08 jnthn If the first issue doesn't bust the parse, but is just wrong, it keeps going.
20:09 jnthn r: A.new; class A { } # it also gets this one better
20:09 p6eval rakudo cf2761: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&A' called (line 1)␤»
20:11 masak std: A.new; class A { }
20:11 p6eval std a8bc48f: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Illegally post-declared type:â�¤       'A' used at line 1â�¤Check failedâ�¤FAILED 00:00 42mâ�¤Â»
20:12 dalek rakudo/nom: 5fd9c03 | (Timo Paulssen)++ | src/core/Enum.pm:
20:12 dalek rakudo/nom: properly .perl nested Enums/Pairs
20:12 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5fd9c03891
20:12 xinming_ joined #perl6
20:12 jnthn masak: yeah, locally get same as STD. Just evalbot didn't rebuild yet :)
20:14 masak nodnod
20:14 moritz jnthn: (re without updating throws_like) I kinda hoped so, because the tests try very hard to fail only one way, so they never accidentally test the wrong thing
20:15 moritz oh, and jnthn++
20:15 jnthn moritz: Yeah, they're pretty good at it. I'm impressed :)
20:16 * moritz writes "experienced with dying exactly the right way" on his CV :-)
20:17 masak "mortal exactitude"
20:17 masak "fatal precision"
20:17 masak "necrotargeting"
20:18 moritz masak++ # necrotargeting
20:18 jnthn :D
20:19 dalek rakudo/nom: 4bfab5a | jnthn++ | docs/ROADMAP:
20:19 dalek rakudo/nom: Remove completed item.
20:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4bfab5a411
20:19 dalek rakudo/nom: 10ced2a | jnthn++ | docs/ChangeLog:
20:19 dalek rakudo/nom: Update ChangeLog.
20:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/10ced2a511
20:19 masak someone might want to write a patient, clear answer to http://www.reddit.com/r/programming/comments/​14v368/the_2012_perl_6_coding_contest/c7hj33d
20:20 masak if I tried, it'd come out "oh, *release* and *promote*! why didn't we think of that!", which is less-than-productive :)
20:20 lawrmcfa joined #perl6
20:20 masak lawrmcfa: yo.
20:21 jnthn masak: "We do both."
20:22 quester left #perl6
20:22 masak that's actually good.
20:22 * masak replies that
20:22 jnthn Promotion should be proportional to what's on offer. Organizing a coding contest and the advent calendar are the right kind of promotion for where the product is currently at.
20:22 jnthn Going to big companies saying "use Perl 6 now!" is premature.
20:22 masak http://www.reddit.com/r/programming/comments/​14v368/the_2012_perl_6_coding_contest/c7hk299
20:23 dalek roast: e14a5fe | (Timo Paulssen)++ | S04-declarations/my.t:
20:23 dalek roast: unfudge redeclaration spectests for rakudo
20:23 dalek roast: review: https://github.com/perl6/roast/commit/e14a5fed4a
20:24 jnthn timotimo: ah, you just beat me to those :)
20:24 timotimo ha! :D
20:25 timotimo so, if perl6 is an mmorpg, was that a killsteal? :]
20:26 masak :D
20:30 cognominal joined #perl6
20:30 aindilis joined #perl6
20:31 moritz jnthn: t/spec/integration/error-report.rakudo fails a test
20:32 moritz and it's legit
20:33 moritz http://perlpunks.de/paste/show/50ce2ffe.6844.2ff
20:33 moritz it reports line 1 for the undeclared routine
20:42 kivutar joined #perl6
20:43 jnthn moritz: hmmm
20:43 jnthn moritz: lemme guess, it's an #icu test...
20:43 moritz it is
20:44 kurahaupo joined #perl6
20:44 moritz (which is why I regularly run spectests even though I know you do too :-)
20:44 jerome joined #perl6
20:44 cognominal joined #perl6
20:47 jnthn moritz: hm, that line number really is wrong...
20:47 jnthn oh, duh, I fail it
20:50 jnthn r: class A { method m() { say $!x } }
20:50 p6eval rakudo a03049: OUTPUT«[31m===[0mSORRY![31m===[0m�Attribute $!x not declared in class A�at /tmp/W8dKldyJek:1�------> [32mclass A { method m() { say $!x[33m�[31m } }[0m�»
20:51 diakopter r: class A { method m() { say $.x } }
20:51 p6eval rakudo a03049:  ( no output )
20:51 lichtkind moritz:  any comments?
20:51 phenny lichtkind: 09:59Z <moritz> tell lichtkind not a bug
20:51 masak :)
20:52 timotimo the evalbot automatically compiles new rakudos whenever a push to github happens?
20:52 jnthn Well, there we go then
20:52 masak timotimo: no, every half hour.
20:52 timotimo ah, ok
20:52 jnthn diakopter: That case is different 'cus it's a method call
20:52 masak (if needed)
20:52 moritz lichtkind: it's the :g that makes rakudo not set $/, not the m
20:52 jnthn r: A.new; class A { }
20:52 p6eval rakudo a03049: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Illegally post-declared type:â�¤    A used at line 1â�¤â�¤Â»
20:52 moritz lichtkind: that's because m:g returns a List, and $/ always contains a Match, not a List
20:52 jnthn yay
20:53 kivutar joined #perl6
20:54 [Muffins] joined #perl6
20:54 dalek rakudo/nom: 7fd7073 | jnthn++ | src/Perl6/Grammar.pm:
20:54 dalek rakudo/nom: Fix line numbers in explain_mystery.
20:54 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7fd707360c
20:55 jnthn moritz: Mebbe that helps
20:55 lichtkind moritz: but this should be bug
20:55 lichtkind r: "123.234" ~~ m:g/d+/;
20:55 p6eval rakudo a03049:  ( no output )
20:56 lichtkind r: $_ = "123.234"; say m:g/d+/;
20:56 p6eval rakudo a03049: OUTPUT«␤»
20:56 lichtkind hm
20:56 lichtkind somewhere her was a bug yesterday
20:58 masak hoelzro|away: how's the advent post coming along? everything ready?
20:58 masak heh. "Gather and coroutines being equal in power, hopefully -- tadzik". I like the "hopefully" :P
20:58 moritz nr: $_ = "123.234"; say m:g/d+/;
20:58 jnthn Is that about "equal in power" or the post? ;)
20:58 p6eval niecza v24-12-g8e50362: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Regex modifier g not yet implemented at /tmp/XftQd0J_SV line 1:â�¤------> [32m$_ = "123.234"; say m:g[33mâ��[31m/d+/;[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5) …
20:58 p6eval ..rakudo a03049: OUTPUT«␤»
20:59 lichtkind r: say "123.234.345.456" ~~ m:g/(\d)+/
20:59 p6eval rakudo a03049: OUTPUT«False␤»
20:59 lichtkind thats the bug
20:59 moritz I wonder why that say() is empty
20:59 lichtkind r: say "123.234.345.456" ~~ m:g/(\d+)/
20:59 p6eval rakudo a03049: OUTPUT«False␤»
20:59 moritz lichtkind: that one is a specbug, and long known
20:59 jnthn r: my $x = m:g/(\d+)/; say $x
20:59 p6eval rakudo a03049: OUTPUT«No such method 'match' for invocant of type 'Any'␤  in block  at /tmp/rkPyNdWstz:1␤␤»
20:59 jnthn r: $_ = "123.234.345.456"; my $x = m:g/(\d+)/; say $x
20:59 p6eval rakudo a03049: OUTPUT«123 234 345 456␤»
20:59 moritz m:g// returns a list, and the string smart-matches falsly against the list
21:00 jnthn r: $_ = "123.234.345.456"; say m:g/(\d+)/;
21:00 p6eval rakudo a03049: OUTPUT«123 234 345 456␤»
21:00 moritz jnthn: yes, fixed the test
21:00 jnthn r: $_ = "123.234.345.456"; say m:g/\d+/;
21:00 p6eval rakudo a03049: OUTPUT«123 234 345 456␤»
21:00 moritz r: $_ = "123.234"; say m:g/d+/;
21:00 p6eval rakudo a03049: OUTPUT«␤»
21:00 moritz so, what's the difference?
21:00 jnthn moritz: d+
21:01 moritz oh
21:01 jnthn I missed it too :)
21:01 moritz yes :-)
21:01 moritz rakudo++
21:13 SamuraiJack__ joined #perl6
21:15 Rotwang joined #perl6
21:18 dalek roast: a6eefb3 | moritz++ | S0 (2 files):
21:18 dalek roast: unfudge some now-passing tests for rakudo
21:18 dalek roast: review: https://github.com/perl6/roast/commit/a6eefb3ae1
21:19 stevan_ joined #perl6
21:19 tadzik masak: yeah, hopefully I have most of it done :)
21:19 tadzik if you want to take a look, I'd be delighted
21:19 tadzik (good evening #perl6)
21:20 [Cupcakes] joined #perl6
21:22 masak tadzik! \o/
21:24 tadzik masak! \o/
21:26 jnthn o/ tadzik
21:26 * moritz bootstraps panda with ufo
21:26 tadzik \o
21:26 tadzik moritz: why so?
21:26 moritz tadzik: because the bootstrapping procedure fails on the qast-sink-1 branch
21:27 moritz tadzik: and I want to narrow it down to a smaller scope
21:27 tadzik hm, interesting
21:27 sorear good * #perl6
21:27 tadzik hi sorear
21:27 masak sorear! \o/
21:27 moritz tadzik: and more interesting, it doesn't report any errors, just doesn't copy the files
21:27 moritz nor does it even create the lib/ dir
21:27 sorear masak: I would be interested in such a list :D
21:27 tadzik bah
21:28 tadzik it's probably wrong in some Perl 6 sink context way :)
21:28 moritz probably :-)
21:28 tadzik and it worked before because the implementation was wrong, or something
21:28 moritz or rakudo is wrong :-)
21:28 masak sorear: consider yourself getting one, then :)
21:28 tadzik so I get to learn how sink context works :P
21:28 jnthn Would be good to know which :)
21:28 moritz hah, two tests files fail in panda
21:28 jnthn o/ sorear
21:28 tadzik yay, tests
21:28 moritz jnthn: that's what I'm trying to find out :-)
21:29 tadzik btw, anyone coming from the US to EU somewhere in the upcoming months?
21:29 stevan_ joined #perl6
21:29 moritz perl6 -Ilib t/panda/builder.t
21:29 moritz 1..6
21:29 moritz Compiling lib/foo.pm
21:29 moritz Error while reading from file: Unable to open filehandle from path 'lib/foo.pm'
21:30 tadzik huh
21:30 tadzik indir() failing?
21:30 tadzik but it did find it
21:30 tadzik I'll checkout the branch
21:31 moritz I'll merge nom first
21:31 dalek Heuristic branch merge: pushed 25 commits to rakudo/qast-sink-1 by moritz
21:31 moritz done :-)
21:33 timotimo r: ((1 => 2) => 3).perl.say; (1 => 2 => 3).perl.say
21:33 p6eval rakudo 7fd707: OUTPUT«(1 => 2) => 3␤1 => 2 => 3␤»
21:33 timotimo \☺/
21:34 jnthn timotimo++
21:35 masak \(o => o)/
21:35 masak ship it!
21:35 jnthn .oO( celebrating somebody twisting my nose sideways? )
21:35 moritz tadzik: found the problem
21:35 jnthn masak: We do. :P
21:35 moritz tadzik: indir works, but the last statement within is a for-loop
21:36 jnthn masak: Or in this csae, you do :)
21:36 moritz tadzik: and that is now lazy
21:36 masak jnthn: d'oh!
21:36 moritz tadzik: so it returns an empty list from indir, and reifies it on the outside
21:36 moritz on the outside of indir
21:36 tadzik beh
21:36 moritz so indir has already reverted to the old working dir
21:36 tadzik hm
21:37 jnthn r: say "@b[]"
21:37 p6eval rakudo 7fd707: OUTPUT«Null PMC access in find_method('postcircumfix:<[ ]>')␤  in block  at /tmp/jCucFrtFB0:1␤␤»
21:38 jnthn Guess I should try and fix this one too...
21:38 masak huh, there's *another* reddit thread going on... http://www.reddit.com/r/perl/comments/14w7i4/​anyone_doing_the_2012_perl_6_coding_contest/
21:41 [Cupcakes] joined #perl6
21:41 [Cupcakes] joined #perl6
21:42 moritz funny how that Perl 6 trolling doesn't make me angry anymore
21:42 [Cupcakes] joined #perl6
21:42 masak now that you mention it, same here.
21:42 [Cupcakes] joined #perl6
21:42 moritz do all panda tests pass on rakudo/nom ?
21:42 masak I'm like, "vaporware", really? 2005 called and they'd like their somewhat justified slander back.
21:43 Su-Shee masak: just ignore it. people re-chew and re-iterate all perl and perl 6 cliches every other day..
21:43 spider-mario_ that vaporware sentence is new, I think
21:43 masak yeah, I know.
21:43 masak spider-mario_: hardly.
21:43 spider-mario_ it wasn’t there when I downvoted it minutes ago
21:43 timotimo silly me, i check for a Pair in Enum.perl, not for an Enum. http://t.h8.lv/0001-.perl-​Enums-correctly-too.patch - could this get into rakudo-nom, too, please?
21:43 spider-mario_ I mean in the message
21:44 Su-Shee spider-mario_: ah you mean the posting and not the argument ;)
21:44 masak if there's anything that annoys me, it's being associated with unicorns. it's the Ruby people who are obsessed with unicorns, not us! :P
21:44 tadzik well, I replied there anyway :)
21:45 masak tadzik: nice comment. seconded.
21:45 Su-Shee there's only one way out of this anyways and that's to write a must-have everybody-uses-it application at some point or be invaluable to use on subject X and without real alternative...
21:45 masak many of our courses secretly monetize Perl 6 in various ways :)
21:46 tadzik I'm no longer able to say that I got more money for hacking Perl 6 than Perl 5 though :0
21:46 * araujo should try to compile latest rakudo in his netbook to see if it works now
21:46 Su-Shee I'm going to snug some Perl 6 into an article or two..
21:46 masak Su-Shee: I wouldn't mind a killer app, but "excellent libraries" doesn't sound so bad either.
21:46 dalek panda: 2529075 | moritz++ | lib/Panda/ (2 files):
21:46 dalek panda: make panda sink-proof
21:46 dalek panda:
21:46 dalek panda: in particular  indir { for { ... } } fails on rakudo/qast-sink-1,
21:46 dalek panda: because for is now lazy, and thus a lazy list is returned from indir.
21:46 dalek panda: The list is reified outside of indir, thus with the wrong working directory
21:46 dalek panda: review: https://github.com/tadzik/panda/commit/25290756ea
21:47 Su-Shee masak: that would fall into the category "invaluable and without real alternatives" :)
21:47 masak well, sometimes invaluable, sometimes just very nice.
21:47 spider-mario araujo: works rather flawlessly on mine
21:47 Su-Shee masak: or "paving the way" helps too. like e.g. DBI did
21:47 spider-mario nice work on the error messages btw :)
21:48 moritz dammit, didn't quite fix panda
21:48 moritz the tests now pass
21:48 araujo spider-mario, I used to get an error before, will try now ...
21:48 moritz but it didn't install itself :(
21:50 moritz must go to bed now, and debug tomorrow :/
21:51 araujo moritz, night o/
21:51 hoelzro masak: it's ready to roll
21:51 jnthn 'night, moritz
21:51 moritz o/
21:51 hoelzro it's queued up in WP
21:52 masak hoelzro: nice.
21:53 hoelzro I'm not sure what definition of "00:00" WP uses, though
21:53 hoelzro feel free to look the post over beforehand, though =)
21:55 hoelzro where can the source for the JS version of NQP found?
21:58 tadzik github/pmurias/rakudo-js I think
21:58 hoelzro ah ha
21:59 hoelzro tadzik++
21:59 masak 'night, #perl6
21:59 hoelzro o/ masak
21:59 araujo masak, night o/
22:00 japhb o/
22:05 pmurias hoelzro: yes
22:06 hoelzro pmurias: I want to see what black magic you use to get this done ;)
22:06 pmurias it's not yet done ;)
22:07 pmurias hoelzro: if anything is confusing mention it and i'll try to explain/clean it up
22:07 hoelzro pmurias: I'm just poking around for now, but I'll let you know!
22:08 dalek rakudo-js: bb7c570 | (Paweł Murias)++ | / (2 files):
22:08 dalek rakudo-js: [nqp] interoplate scalars (containing text) in regexes
22:08 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/bb7c57014d
22:08 pmurias hoelzro: does it build on your machine?
22:08 hoelzro pmurias: haven't even tried yet; standby
22:09 hoelzro well, make didn't fail =)
22:10 pmurias ./run_tests then
22:11 * jnthn should see if it can build/run on Windows at some point :)
22:12 hoelzro ok, ./run_tests is *not* happy!
22:12 * hoelzro investigates
22:13 rindolf joined #perl6
22:14 pmurias hoelzro: nopaste errors?
22:14 hoelzro incoming
22:15 hoelzro oh, I figured out why
22:16 pmurias why?
22:17 hoelzro I hadn't cloned nqp to ../ =P
22:17 [Coke] How do you add a member to a set?
22:17 hoelzro ok, only 11-sub.t failed!
22:19 pmurias hmm, strange
22:19 pmurias what nqp do you have?
22:20 hoelzro latest from git
22:20 hoelzro or do you mean installed?
22:20 pmurias installed
22:20 pmurias (both are relevant ;)
22:21 hoelzro 2012.11 is installed
22:21 hoelzro ../nqp is latest from Git
22:21 pmurias same as here
22:21 pmurias how does the test fail?
22:22 hoelzro TypeError: Object #<Object> has no method 'isinvokable'
22:22 pmurias you could nopaste nqp bin/nqp-js.nqp ../nqp/t/nqp/11-sub.t
22:24 pmurias ah, reproduced the error
22:24 pmurias I didn't have the latest nqp revision and the tests changed ;)
22:25 hoelzro ah, ok =)
22:27 bbkr_ rakudo: print now.WHAT
22:27 p6eval rakudo 7fd707: OUTPUT«use of uninitialized variable $v of type Instant in string context  in block  at /tmp/vPks5sMJeI:1␤␤»
22:28 bbkr_ hm, interesting
22:28 bbkr_ rakudo: say now.WHAT
22:28 p6eval rakudo 7fd707: OUTPUT«Instant()␤»
22:28 * bbkr_ reports
22:28 jnthn bbkr_: print calls Str, say calls gist
22:29 jnthn bbkr_: So it's not surprising they're different.
22:29 rindolf joined #perl6
22:29 jnthn The spurious $v is a problem though.
22:29 bbkr_ oh, new thing i've just learned :)
22:29 pmurias nqp: say nqp::isinvokeable(sub() {})
22:29 p6eval nqp: OUTPUT«Confused at line 2, near "say nqp::i"␤current instr.: 'panic' pc 13221 (src/stage2/gen/NQPHLL.pir:4682) (src/stage2/gen/NQPHLL.pm:328)␤»
22:29 bbkr_ jnthn++ #explaining things
22:29 pmurias nqp: say(nqp::isinvokable(sub() {}))
22:29 p6eval nqp: OUTPUT«1␤»
22:29 yakshavr joined #perl6
22:29 pmurias jnthn: is that correct?
22:30 pmurias jnthn: say( (!nqp::isinvokable(sub() {}) ?? 'ok 13' !! 'no 13' ) ~ '  nqp::isinvokable on sub');
22:30 jnthn pmurias: believe so
22:30 jnthn though probably shoudl be not ok 13
22:31 pmurias jnthn: so the test is incorrect?
22:31 pmurias jnthn: should i fix that?
22:31 jnthn er, wtf...yes, that test looks backwards.
22:32 jnthn pmurias: yes, please feel free to fix.
22:32 pmurias it seems to test for *incorrect* behaviour ;)
22:33 tadzik argh, fixed panda
22:33 * pmurias rebuilds nqp to run the test
22:33 tadzik I'm not friends with sink context now
22:34 pmurias hoelzro: thanks for building nqp-js, portability to the first few computers is always tricky
22:34 hoelzro pmurias: what platform do you develop on?
22:34 tadzik I put 'return' and the end of my sub and suddenly stuff works
22:35 tadzik that's not quite The Least Surprise thing
22:36 bbkr_ jnthn: nice post about phasers. i'll use some ideas from it in SMTP protocol implementation
22:36 tadzik maybe I just don't understand sink context, but I find it terribly counterintuitive so far :)
22:37 jnthn tadzik: I think part of the problem may be that people expect for to never be lazy even if in non-sink context.
22:37 tadzik possibly
22:37 tadzik that's correctly, I don't expect for to be lazy :)
22:37 tadzik s/ly//
22:38 tadzik I guess I can understand the reasoning
22:38 jnthn I guess it's for TimToady++ to ponder given it seems to be the main sink context thing that bites people.
22:38 tadzik my new rule of thumb: write "return" at the end of subs to be sure that they execute
22:39 jnthn hm, integrating the STD approach to var use tracking seems to have gone quite smoothly...
22:39 jnthn Gets rid of an NPMCA
22:39 dalek panda: 9d68a70 | tadzik++ | lib/Panda/Fetcher.pm:
22:39 dalek panda: Almost fix panda for sink context
22:39 dalek panda: review: https://github.com/tadzik/panda/commit/9d68a70052
22:40 japhb tadzik: That rule of thumb makes me scrunch up my face
22:40 dalek nqp: 7405897 | (Paweł Murias)++ | src/QAST/Operations.nqp:
22:40 dalek nqp: Remove a misleading relict from pir translation.
22:40 dalek nqp: review: https://github.com/perl6/nqp/commit/7405897155
22:40 dalek nqp: ad4ae89 | (Paweł Murias)++ | t/nqp/44-try-catch.t:
22:40 dalek nqp: Test try without an exception.
22:40 dalek nqp: review: https://github.com/perl6/nqp/commit/ad4ae8960f
22:40 dalek nqp: 7fd05c9 | (Paweł Murias)++ | t/nqp/11-sub.t:
22:40 dalek nqp: Fix test 11.
22:40 dalek nqp: review: https://github.com/perl6/nqp/commit/7fd05c9869
22:41 tadzik :)
22:41 japhb pmurias, Sorry that I have not gotten back to you yet re: building nqp-js under perl6-bench.  I will, but sadly still working on a big unexpected task.  :-(
22:41 jnthn pmurias++ # removing relics
22:41 tadzik Urban Dictionary says: scrunch – when a girls bikini bottom goes up her butt
22:42 jnthn tadzik: Try using a more...normal...dictionary :P
22:42 pmurias jnthn: test 60 fails with what appears to be differences in how numers are implemented on our computers
22:42 tadzik I usually go there for stuff that's not in google translate
22:42 japhb Hmmm.  I suppose it would be somewhat accurate ... but really, scrunching describes the squeezing and wrinkling
22:42 jnthn pmurias: Is that the bigint one?
22:43 jnthn pmurias: I get fails depending on box also
22:43 yakshavr joined #perl6
22:43 pmurias http://pastie.org/5540604
22:43 pmurias jnthn: yes
22:51 benabik joined #perl6
22:52 pmurias jnthn: abs_n returns a double precison number or a single precision one?
22:52 jnthn All the _n are double precision
22:54 fgomez joined #perl6
22:54 fgomez joined #perl6
22:55 pmurias jnthn: it in the last test we have a conversion to single precision
22:55 * pmurias digs deeper
23:02 pmurias jnthn: FLOATVAL is double?
23:03 jnthn pmurias: Typically
23:03 dalek nqp-rx: 45d4a79 | rurban++ | t/nqp/46-charspec.t:
23:03 jnthn (bad naming, I know...)
23:03 dalek nqp-rx: Fix t/nqp/46-charspec.t --without-icu.
23:03 dalek nqp-rx:
23:03 dalek nqp-rx: Synced from parrot efac3e16ed21387837545c991e2a7c8f5d6781df
23:03 dalek nqp-rx: [parrot #874]
23:03 dalek nqp-rx: review: https://github.com/perl6/nqp-rx/commit/45d4a79137
23:04 dalek rakudo/nom: 6437197 | jnthn++ | src/Perl6/ (2 files):
23:04 dalek rakudo/nom: Align variable checking with how STD does it.
23:04 dalek rakudo/nom:
23:04 dalek rakudo/nom: This fixes the bug where @/%/& sigil variables interpolated in strings
23:04 dalek rakudo/nom: were not checked properly, leading to NPMCA at runtime.
23:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6437197ce5
23:05 jnthn OK, sleep time...'night
23:09 pmurias night
23:14 araujo nice, rakudo compiling fine now ....
23:27 stevan_ joined #perl6
23:28 [Coke] (adding to a set) the only way I've found so far is:
23:28 [Coke] r: my Set $a = set(1,2,3); $a.hash<6>=1; say $a.perl
23:28 p6eval rakudo 643719: OUTPUT«set("1", "2", "3", "6")␤»
23:30 [Coke] that seems suboptimal.
23:36 kurahaupo Should "set" be a value or a container?
23:37 kurahaupo r: my Set $a = set(1,2,3); $a |= set(6); say $a.perl
23:37 p6eval rakudo 643719: OUTPUT«Type check failed in assignment to '$a'; expected 'Set' but got 'Set'␤  in block  at src/gen/CORE.setting:2093␤  in sub AUTOTHREAD at src/gen/CORE.setting:2085␤  in block  at src/gen/CORE.setting:12511␤  in block  at /tmp/4T2AMD7EIt:1␤␤»
23:38 kurahaupo r: my Set $a = Set(1,2,3); $a = $a | Set(6); say $a.perl
23:38 p6eval rakudo 643719: OUTPUT«Cannot coerce object of type Capture to Set. To create a one-element set, pass it to the 'set' function␤  in sub to-set at src/gen/CORE.setting:11786␤  in method postcircumfix:<( )> at src/gen/CORE.setting:11778␤  in  at src/gen/BOOTSTRAP.pm:852␤  in any  at src/ge…
23:38 kurahaupo r: my Set $a = set(1,2,3); $a = $a | set(6); say $a.perl
23:38 p6eval rakudo 643719: OUTPUT«Type check failed in assignment to '$a'; expected 'Set' but got 'Set'␤  in block  at src/gen/CORE.setting:2093␤  in sub AUTOTHREAD at src/gen/CORE.setting:2085␤  in block  at /tmp/weizgkVSAI:1␤␤»
23:39 kurahaupo r: my Set $a = set(1,2,3); $a = $a ⋃ set(6); say $a.perl
23:39 p6eval rakudo 643719: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Two terms in a rowâ�¤at /tmp/RxGQy3qzpg:1â�¤------> [32mmy Set $a = set(1,2,3); $a = $a [33mâ��[31m⋃ set(6); say $a.perl[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix or meta-infixâ�¤        infix stopperâ�¤        statement endâ�¤  â€¦
23:55 swanstomp joined #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo