Camelia, the Perl 6 bug

IRC log for #perl6, 2012-08-15

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs

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

All times shown according to UTC.

Time Nick Message
00:01 Psyche^ joined #perl6
00:01 [Coke] r: use Test; cmp_ok (5, &infix:<cmp>, 5);
00:01 p6eval rakudo c07eba: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&cmp_ok' called (line 1)␤»
00:02 sorear who, who is presently reading the channel, is going to be at yapc::eu?
00:02 [Coke] n: use Test; cmp_ok (5, &infix:<cmp>, 5);
00:02 p6eval niecza v19-21-gc86e8e5: OUTPUT«Unhandled exception: No value for parameter '$fn' in 'cmp_ok'␤  at /home/p6eval/niecza/lib/Test.pm6 line 0 (cmp_ok @ 1) ␤  at /tmp/c1V3J9KEM8 line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3929 (ANON @ 3) ␤  at /home/p6eval/niecza/li…
00:07 [Coke] r: say {}[*-1]
00:07 p6eval rakudo c07eba: OUTPUT«Cannot use negative index -1 on Hash␤  in method gist at src/gen/CORE.setting:9699␤  in sub say at src/gen/CORE.setting:7086␤  in block  at /tmp/wGqYX5YsRK:1␤␤»
00:07 [Coke] r: say {}[-1]
00:07 p6eval rakudo c07eba: OUTPUT«Cannot use negative index -1 on Hash␤  in method gist at src/gen/CORE.setting:9699␤  in sub say at src/gen/CORE.setting:7086␤  in block  at /tmp/aMavoeNqNl:1␤␤»
00:07 [Coke] r: say {}[1]
00:07 p6eval rakudo c07eba: OUTPUT«Index out of range. Is: 1, should be in 0..0␤  in method gist at src/gen/CORE.setting:9699␤  in sub say at src/gen/CORE.setting:7086␤  in block  at /tmp/m29KDIwVJ1:1␤␤»
00:08 [Coke] n: use Test: is {}[*-1], Failure
00:08 p6eval niecza v19-21-gc86e8e5: OUTPUT«Use of uninitialized value in string context␤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1262 (warn @ 5) ␤  at /home/p6eval/niecza/boot/lib/CORE.setting line 268 (Mu.Str @ 15) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /home/p6eval/niecza/src/S…
00:14 [Coke] npr: my str $foo
00:14 p6eval niecza v19-21-gc86e8e5: OUTPUT«[31m===[0mSORRY![31m===[0m��Malformed my at /tmp/yxD9eY4Ell line 1:�------> [32mmy[33m�[31m str $foo[0m��Parse failed��»
00:14 p6eval ..rakudo c07eba, pugs:  ( no output )
00:18 benabik npr: say 'This is NPR'
00:18 p6eval rakudo c07eba, niecza v19-21-gc86e8e5, pugs: OUTPUT«This is NPR␤»
00:20 fgomez joined #perl6
00:20 PacoAir joined #perl6
00:22 TimToady I suspect mkdir is just an oversight
00:24 fgomez joined #perl6
00:31 vlixes left #perl6
00:53 mberends joined #perl6
00:53 dayangkun joined #perl6
01:04 leprevost joined #perl6
01:15 scott__ joined #perl6
01:16 Psyche^ joined #perl6
01:25 jaldhar joined #perl6
01:27 [Coke] std: use Test; is showkv($kb ∪ $kb), showkv($kb), "KeyBag union with itself yields (as Bag)";
01:27 p6eval std 235f71b: OUTPUT«Compiled lib/Test.pm6â�¤[31m===[0mS​ORRY![31m===[0mâ�¤Variable $kb is not predeclared at /tmp/IfU9m3iKrk line 1:â�¤------> [32muse Test; is showkv([33mâ��[31m$kb ∪ $kb), showkv($kb), "KeyBag union w[0mâ�¤Unable to parse argument list at /tmp/IfU9m3iKrk line 1:â�¤------> …
01:27 [Coke] std: use Test; my $kb; is showkv($kb ∪ $kb), showkv($kb), "KeyBag union with itself yields (as Bag)";
01:27 p6eval std 235f71b: OUTPUT«[31m===[0mSORRY![31m===[0m�Unable to parse argument list at /tmp/cBoRJ761g1 line 1:�------> [32muse Test; my $kb; is showkv[33m�[31m($kb ∪ $kb), showkv($kb), "KeyBag union [0m�Couldn't find final ')'; gave up at /tmp/cBoRJ761g1 line 1:�------> [32muse Test; …
01:27 [Coke] TimToady: ^^
01:27 benabik Does std know about ∪ ?
01:33 [Coke] std: ¢3
01:33 p6eval std 235f71b: OUTPUT«[31m===[0mSORRY![31m===[0m�Bogus statement at /tmp/b6c0aItkwu line 1:�------> [32m<BOL>[33m�[31m¢3[0m�Parse failed�FAILED 00:00 42m�»
01:34 [Coke] std: ¢3.say
01:34 p6eval std 235f71b: OUTPUT«[31m===[0mSORRY![31m===[0m�Bogus statement at /tmp/icE1HGUdiN line 1:�------> [32m<BOL>[33m�[31m¢3.say[0m�Parse failed�FAILED 00:00 42m�»
01:36 [Coke] std: sub prefix:<¢>($a);
01:36 p6eval std 235f71b: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Malformed block at /tmp/YE19cY9grl line 1:â�¤------> [32msub prefix:<¢>($a)[33mâ��[31m;[0mâ�¤    expecting any of:â�¤    constraintâ�¤     param_sepâ�¤      parameterâ�¤      routine_defâ�¤    traitâ�¤Parse failedâ�¤FAILED 00:00 42mâ�¤Â»
01:37 [Coke] std: sub prefix:<¢>($a) {};
01:37 p6eval std 235f71b: OUTPUT«Potential difficulties:â�¤  $a is declared but not used at /tmp/6MeOMpKj56 line 1:â�¤------> [32msub prefix:<¢>([33mâ��[31m$a) {};[0mâ�¤ok 00:00 42mâ�¤Â»
01:38 diakopter r: class A { has int $!b };
01:38 p6eval rakudo c07eba:  ( no output )
01:38 diakopter r: class A { has int $!b }; say $.new(b=>'4').gist
01:38 p6eval rakudo c07eba: OUTPUT«===SORRY!===␤Variable $.new used where no 'self' is available␤at /tmp/SVVzkvxYdB:1␤»
01:38 diakopter r: class A { has int $!b }; say A.new(b=>'4').gist
01:39 p6eval rakudo c07eba: OUTPUT«A.new()␤»
01:39 diakopter r: class A { has int $.b }; say A.new(b=>'4').gist
01:39 p6eval rakudo c07eba: OUTPUT«Cannot assign to a non-container␤  in block  at src/gen/CORE.setting:647␤  in method BUILDALL at src/gen/CORE.setting:631␤  in method bless at src/gen/CORE.setting:621␤  in method new at src/gen/CORE.setting:606␤  in block  at /tmp/Dy1LV3OwFA:1␤␤»
01:39 diakopter r: class A { has int $!b; method b() { $!b } }; say A.new(b=>'4').b
01:39 p6eval rakudo c07eba: OUTPUT«0␤»
01:40 diakopter r: class A { has int $!b; method b($b) { $!b = $b if $b; $!b } }; say A.new(b=>'4').b
01:40 p6eval rakudo c07eba: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in method b at /tmp/y_SohHuzuv:1␤  in block  at /tmp/y_SohHuzuv:1␤␤»
01:40 diakopter r: class A { has int $!b; say $!b }; say A.new(b=>'4').b
01:40 p6eval rakudo c07eba: OUTPUT«===SORRY!===␤Variable $!b used where no 'self' is available␤at /tmp/PNEDLxFAiD:1␤»
01:41 diakopter r: class A { has int $!b; method foo() { say $!b } }; A.new(b=>'4').foo
01:41 p6eval rakudo c07eba: OUTPUT«0␤»
01:41 diakopter r: class A { has int $!b; method foo() { say $!b } }; A.new({b=>'4'}).foo
01:41 p6eval rakudo c07eba: OUTPUT«Default constructor only takes named arguments␤  in method new at src/gen/CORE.setting:609␤  in block  at /tmp/_p5A0ehcmT:1␤␤»
01:41 diakopter r: class A { has int $!b; method foo() { say $!b } }; A.new(b=>4).foo
01:41 p6eval rakudo c07eba: OUTPUT«0␤»
01:42 diakopter r: class A { has Str $!b; method foo() { say $!b } }; A.new(b=>"aa").foo
01:42 p6eval rakudo c07eba: OUTPUT«Str()␤»
01:42 diakopter r: class A { has Str $!b; method foo() { say $!b } }; A.new($!b=>"aa").foo
01:42 p6eval rakudo c07eba: OUTPUT«===SORRY!===␤Variable $!b used where no 'self' is available␤at /tmp/qTlwDpP_BX:1␤»
01:42 diakopter r: class A { has Str $!b; method foo() { say $!b } }; A.new('b'=>"aa").foo
01:42 p6eval rakudo c07eba: OUTPUT«Default constructor only takes named arguments␤  in method new at src/gen/CORE.setting:609␤  in block  at /tmp/Dwv3iHrEQu:1␤␤»
01:42 diakopter r: class A { has Str $!b; method foo() { say $!b } }; A.new(:b("aa")).foo
01:42 p6eval rakudo c07eba: OUTPUT«Str()␤»
01:42 diakopter r: class A { has $!b; method foo() { say $!b } }; A.new(:b("aa")).foo
01:43 p6eval rakudo c07eba: OUTPUT«Any()␤»
01:45 tokuhiro_ joined #perl6
01:50 alphalyrae joined #perl6
02:21 TimToady has std been recompiled in the last day or so?  if not, it doesn't have the set ops yet
02:22 sorear std: 1
02:22 p6eval std 235f71b: OUTPUT«ok 00:00 40m␤»
02:23 TimToady hmm, doesn't seem to like set ops here either, and I know my CORE has 'em
02:23 TimToady probably a utf-8 foulup somewhere
02:23 cognominal joined #perl6
02:23 TimToady or maybe infix:<> in CORE is not implemented...
02:30 thou joined #perl6
02:32 jeffreykegler joined #perl6
02:44 orafu joined #perl6
03:15 Psyche^ joined #perl6
03:21 cognominal joined #perl6
04:22 cognominal joined #perl6
04:39 topo joined #perl6
04:44 birdwindupbird joined #perl6
04:48 moritz \o
04:48 phenny moritz: 14 Aug 23:40Z <[Coke]> ask moritz : you added LAZY to S04-statements/lazy.t, but it's not spec, or recognized by std. Where's the bug?
04:49 moritz [Coke]: I guess it should go away again, it was a misguided attempt on my part
04:57 telex joined #perl6
04:58 sorear moritz: o/
05:14 xinming joined #perl6
05:21 * sorear suddenly notices 'Platin Sponsors' on the yapc::eu website
05:21 * sorear wonders whether this is a reportable bug
05:23 moritz why? should it be "Platinum"?
05:23 sorear yes
05:23 bonsaikitten yes, a germanism!
05:24 sorear it's not a big deal, it's just odd
05:25 birdwindupbird joined #perl6
05:25 shachaf hi bonsaikitten, sorear
05:26 sorear yo, shachaf.
05:26 sorear will we see you in Frankfurt?
05:26 shachaf Unlikely -- when is it?
05:26 shachaf Ah, 20-22. Doesn't look like it.
05:27 shachaf It's more likely that I'll be in San Diego sometime. Are you still in the area?
05:28 odoacre joined #perl6
05:34 sorear shachaf: yes
05:34 sorear but I'm leaving in 12 hours :D
05:35 shachaf For .de?
05:35 sorear yes
05:35 TimToady we're flying into Luxembourg
05:36 sorear .oO( flight into terrain )
05:36 TimToady .lu I guess that would be
05:36 fgomez joined #perl6
05:37 TimToady well, at least I hope it's a controlled flight into terrain
05:37 TimToady slightly better survival rate that way
05:37 bonsaikitten TimToady: you should spend a few minutes to look at the city while you're there ;)
05:37 TimToady we will, after
05:37 sorear bonsaikitten: what's in luxembourgh?
05:37 bonsaikitten sorear: very nice old city
05:38 bonsaikitten lots of banks!
05:38 dalek rakudo/sigilless: bf892d1 | moritz++ | src/core/Int.pm:
05:38 dalek rakudo/sigilless: switch Int to sigilless
05:38 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/bf892d1d92
05:38 dalek rakudo/sigilless: 61d67fa | moritz++ | src/core/Rat.pm:
05:38 dalek rakudo/sigilless: use sigilless params in Rat
05:38 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/61d67fac68
05:38 dalek rakudo/sigilless: 0d98c32 | moritz++ | src/core/Complex.pm:
05:38 dalek rakudo/sigilless: switch Complex to sigillless params
05:38 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/0d98c32890
05:38 dalek rakudo/sigilless: 504e994 | moritz++ | src/core/ (5 files):
05:38 dalek rakudo/sigilless: switch Attribute, Enumeration, Hash, LoL and Order to sigilless params
05:38 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/504e994257
05:38 dalek rakudo/sigilless: 234ad61 | moritz++ | src/core/List.pm:
05:38 dalek rakudo/sigilless: switch List to sigilless params
05:38 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/234ad61b3b
05:38 dalek rakudo/sigilless: 1f6fe81 | moritz++ | src/core/ (3 files):
05:38 dalek rakudo/sigilless: switch Numeric to sigilless params
05:38 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/1f6fe8154a
05:38 dalek rakudo/sigilless: 221379e | moritz++ | src/core/ (4 files):
05:38 dalek rakudo/sigilless: switch Numeric, Real and Cursor to sigilless params
05:38 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/221379e6ba
05:38 dalek rakudo/sigilless: 3d21d3f | moritz++ | src/core/ (2 files):
05:38 dalek rakudo/sigilless: switch Mu to sigilless params (mostly)
05:38 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/3d21d3ff04
05:53 wtw joined #perl6
06:06 topo__ joined #perl6
06:21 moritz nr: say 'a' ... 'e'
06:21 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«a b c d e␤»
06:21 moritz nr: say 'e' ... 'a'
06:21 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«e d c b a␤»
06:22 moritz nr: say 'a' ... 'a'
06:22 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«a␤»
06:24 moritz nr: say (1...*)[^5]
06:24 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«1 2 3 4 5␤»
06:26 moritz nr: say (1, 1, * + * ... *)[^8]
06:26 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«1 1 2 3 5 8 13 21␤»
06:28 moritz nr: 5, { $_ * 2 } ... 40
06:28 p6eval rakudo c07eba, niecza v19-21-gc86e8e5:  ( no output )
06:28 moritz nr: say 5, { $_ * 2 } ... 40
06:28 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«5 10 20 40␤»
06:40 SamuraiJack joined #perl6
06:41 cognominal_ joined #perl6
06:53 mhasch pugs: say 'e' ... 'a'
06:53 p6eval pugs: OUTPUT«*** ␤    Unexpected "'"␤    expecting operator, ":" or ","␤    at /tmp/XPYZkeUgWZ line 1, column 13␤»
06:59 dalek doc: 80689f3 | moritz++ | lib/operators.pod:
06:59 dalek doc: [operators] sequence op
06:59 dalek doc: review: https://github.com/perl6/doc/commit/80689f3399
07:06 topo joined #perl6
07:09 * mhasch has to get used to ... binding less tightly than comma
07:11 kresike joined #perl6
07:11 kresike good morning all you happy perl6 people
07:12 moritz \o mhasch, kresike
07:13 sorear o, kresike
07:13 sorear mhasch: .. still exists and you should be using it instead.
07:14 sorear ... is only really useful if the left hand side is a list or function
07:14 moritz or if you want a reversed list
07:14 moritz nr: say 'e' ... 'a'
07:14 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«e d c b a␤»
07:14 moritz nr: say 'e' .. 'a'
07:14 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«"e".."a"␤»
07:14 moritz nr: say ('e' .. 'a').list
07:14 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«␤»
07:15 brrt joined #perl6
07:16 mhasch (light bulb hovering over my head) aah.  Now i get it.
07:16 kresike o/ moritz, sorear
07:17 sorear eval 1..10
07:17 buubot_backup sorear: No output.
07:17 sorear eval $,=' ', print 1..10
07:17 buubot_backup sorear: 1 2 3 4 5 6 7 8 9 101
07:17 sorear eval $,=' ', print 10..1
07:17 buubot_backup sorear: 1
07:17 sorear eval print 1,2,3
07:17 buubot_backup sorear: 1231
07:20 sorear any perl6ists broadly familiar with what console.log({a:1, b:2, c:3}) does in the WebKit REPL?
07:21 sorear I want niecza/js to have a similar feature, pondering the least evil way to make it work :>
07:31 mucker joined #perl6
07:59 Psyche^ joined #perl6
08:00 moritz niecza/js?
08:02 arnsholt sorear: I have no idea what that does =)
08:02 arnsholt Also, what moritz said
08:03 mhasch niecza with a jvm backend?
08:05 moritz jvm != js
08:05 mhasch niecza with a js backend?
08:07 moritz more likely. But that's the first time I've heard of that, so I'm curious about the plans
08:09 sorear the plans aren't really ready for public consumption at this point
08:10 topo joined #perl6
08:11 mhasch ha! perl6leaks will gloat on this! :-)
08:13 moritz it'll soon be DDOS'ed :-)
08:19 ihavetoes joined #perl6
08:20 masak good antenoon, #perl6
08:20 Psyche^ joined #perl6
08:23 moritz \o masak
08:28 moritz http://blog.gardeviance.org/​2012/07/adoption-cycles.html
08:28 fridim_ joined #perl6
08:29 moritz it just misses a bit of over-adoption :-)
08:32 sergot joined #perl6
08:32 sergot hi o/
08:36 masak moritz: over-adoption would be a more realistic model than just capping at 100%, like the red curve does ;)
08:36 masak sergocie! \o/
08:36 sergot masaku! \o/
08:38 moritz can anybody give me a short summary about what left-hand sides trigger = to be list assignment (instead of item assignment)?
08:42 moritz and on a completely unrelated topic, I notice that that the stub operators ... !!! and ??? are non-identifier listops
08:42 moritz how can I declare a non-identifier listop myself?
08:44 masak moritz: according to S03, item assignment is when the lhs is a "simple lvalue", and list assignment is for "compound targets".
08:44 moritz masak: that's by far too imprecise to put it into perl6/doc, IMHO
08:44 masak aye.
08:44 masak examples would be better.
08:44 moritz well, I usually want both
08:44 moritz rules and examples
08:45 masak my personal rule, and I don't know if it catches everything, is this: arrays, hashes, and slices like @a[2, 3, 4] or @b[@c], trigger list assignment. lhs parens trigger list assignment. the rest is item assignment.
08:46 moritz does @a[1] trigger list or item assignment?
08:46 masak (the formulation of "slices like..." is such that @a[2] and @b[$c] don't trigger list assignment)
08:46 masak item assignment.
08:47 masak in cases where it's unknown, like @d[foo], I... I *think* it's list assignment.
08:47 moritz what about  foo() = ... ?
08:48 masak same as @d[foo].
08:48 moritz :-)
08:48 masak so, list, I guess.
08:48 * moritz will have some "fun" trolling S03-operators/assign.t
08:49 masak "\o/"
08:52 * masak is reminded of The Day #perl6 Did Sarcasm: http://irclog.perlgeek.de/​perl6/2012-05-10#i_5570232
08:52 dakkar joined #perl6
08:53 masak re monkey-patching all X:: class .message methods (from that log): that's an ACME module and a fantastic lightning talk right there.
08:55 moritz "I'm not bothering to produce a good error message, since you won't bother reading it anyway. Paste it to stackoverflow instead!"
09:01 sorear o/ masak! sergot!
09:02 sorear moritz: in nieczaland, a left hand side triggers list assignment if it evaluates to something with the list flag set
09:03 sorear moritz: if you want to talk about niecza/js, fine, but expect a lot of potholes
09:03 moritz sorear: and expressions have the list flag set?
09:03 moritz s/and/and what/
09:04 sorear moritz: the flag is set on the return value, not the expression.
09:04 sorear foo() = 1..3 does either "kind" of assignment
09:04 moritz sorear: erm, what? shouldn't that be a parse-time decision?
09:05 moritz sorear: I meant, list assignment and item assignment have different precedence
09:05 moritz s/t//
09:05 sorear the precedence check is parse time
09:06 moritz ok, it's the precedence check I'm currently interested in
09:06 sorear it's pretty ugly
09:07 moritz I gathered that from the number of tests we have for it
09:07 sorear it looks within the current expression to the left for @ sigils, postfix operators, signatures
09:07 jnthn Where "looks in" means "sets a contextual when it sees"
09:07 sorear wait, there's something here I don't fully understand
09:08 sorear it's resetting $*LEFTSIGIL on each pass through the TERM loop
09:08 dalek rakudo/sigilless: 30fab97 | moritz++ | src/core/ (8 files):
09:08 dalek rakudo/sigilless: switch more of the setting to sigilless params (Int, Junction, Parcel, Range, Rational, Routine, stubs)
09:08 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/30fab97578
09:08 dalek rakudo/sigilless: 018777f | moritz++ | src/core/Array.pm:
09:08 dalek rakudo/sigilless: switch Array to sigilless params
09:08 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/018777f389
09:08 dalek rakudo/sigilless: ddb2dd2 | moritz++ | src/core/operators.pm:
09:08 dalek rakudo/sigilless: Switch operators.pm to sigilless params
09:08 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/ddb2dd2b74
09:08 dalek rakudo/sigilless: 76b036d | moritz++ | src/core/metaops.pm:
09:08 dalek rakudo/sigilless: Switch metaops to sigilless params
09:08 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/76b036d529
09:09 sorear so really  it only cares about the form of the immediately prior <term> and the precedence of any unclosed operation
09:09 sorear what is sigilless?
09:10 moritz sorear: sub f(\x) { x }
09:10 moritz sorear: instead of sub f(\$x) { $x }
09:10 sorear and this is proving to be a major change to rakudo?
09:11 masak what makes you think that?
09:11 moritz just volominous in the setting
09:11 moritz making  my $x := (1, 2, 3)  not flatten will be the major change, iiuc
09:12 dalek doc: 319bd4c | moritz++ | htmlify.pl:
09:12 dalek doc: [htmlify] L<&foo> always links to a routine
09:12 dalek doc: review: https://github.com/perl6/doc/commit/319bd4cf0a
09:12 dalek doc: 783fa94 | moritz++ | / (2 files):
09:12 dalek doc: treat listops like operators for now
09:12 dalek doc: review: https://github.com/perl6/doc/commit/783fa94681
09:12 dalek doc: 7778a70 | moritz++ | lib/operators.pod:
09:12 sorear masak: the fact that moritz has had to make a bazillion commits
09:12 dalek doc: list assignment, stubby listops
09:12 dalek doc: review: https://github.com/perl6/doc/commit/7778a70a93
09:12 Circlepuller joined #perl6
09:12 jnthn sorear: The commits are quite clearly to src/core
09:12 moritz sorear: well, the setting uses \$x in operator signatures a lot, because it's a bit faster than $x
09:13 moritz so lots of code needs lots of semi-mechanical updates
09:13 moritz fwiw the generated HTML + images of doc.perl6.org is now nearly 10MB
09:14 jnthn One of the changes made in the QAST switch will let me get the optimizer to do that transform at some point.
09:14 jnthn In some cases anyway.
09:16 * sorear wants to get back on niecza and make it competitive again
09:16 ObseLeTe joined #perl6
09:18 Circlepuller left #perl6
09:18 Circlepuller joined #perl6
09:18 brrt how awesome would it be if niecza and rakudo could share code
09:18 brrt high level library classes, that kind of stuff
09:19 sorear they do, informally
09:19 sorear a lot of stuff is copied between them and colomon++ is working on a panda port
09:19 sorear some existing libraries work on both
09:19 brrt thats pretty nice
09:20 sorear moritz: I got to thinking the other day that the weak link of try.rakudo.org is the CGI backend process that nobody can keep working
09:20 sorear moritz: and we need a *fully featured* Javascript Perl 6
09:21 sorear moritz: eventually I came to the idea that a fast, STD-based, Javascript-based Perl 6 implementation would have to look a lot like Niecza's goal state, so I started thinking about that state and how to get there
09:22 brrt sorear: the other method is you simply use mod_parrot ;-)
09:22 moritz sorear: I applaud that goal. However the best way to get try.rakudo.org running is engineering a better CGI backend process, not writing a compiler :-)
09:22 brrt which has tests and stuff
09:22 moritz and yes, *fully featured* Perl 6 in the browser would be *really* cool
09:23 arnsholt I don't think mod_parrot would solve the problem, since you'd still have to keep the "talking to a remote server" part going
09:23 brrt fully featured p6 anywhere would be cool
09:23 brrt whys that
09:23 brrt if you have a web server
09:23 sorear I was thinking about this in the context of 'make perl6.org awesome', not Rakudo per se
09:23 brrt and it runs a p6 script
09:23 brrt within the server
09:24 brrt you can just 'eval' the code in some sort of safe mode
09:24 moritz brrt: for try.rakudo.org you have to keep a REPL running between the requests
09:24 arnsholt try.rakudo.org is a REPL-in-a-webpage
09:24 brrt .... aaaah... that changes things a bit
09:24 brrt well, not really that much
09:24 arnsholt So, the server communication shenanigans is the hard part
09:24 brrt you can also keep the local state in some sort of serialized form
09:25 brrt supposing you can't open filehandles / pipes / sockets that should pretty much be ok
09:25 moritz I wouldn't know how to serialize the whole lexical environment
09:25 sorear moritz: you can serialize settings, no? :>
09:25 moritz I guess it can be done since the bs branch, but it's not tirivial
09:26 moritz sorear: so each line sent to the server is compiled as a new setting? :-)
09:26 sorear moritz: When you say 'bigobject;' in the WebKit repl it doesn't print it as text; it creates a tree expander widget and allows you to incrementally expand the object
09:26 sorear this even works if the object is huge, has circular refs, etc
09:26 sorear it's quite nice
09:27 * moritz wants that for basically all languages he uses :-)
09:27 sorear I'm wondering how I can use the unique characteristics of the browser environment to make "try.niecza" more awesome
09:27 brrt webkit / chrome repl is nice
09:27 sorear I think for that it would be good to make a parallel to .gist, call it .html or .dom
09:28 brrt sorear: run it as a silverlight app
09:28 brrt if possible
09:28 sorear brrt: silverlight has been EOLed by Microsoft and Moonlight followed quickly
09:28 sorear i think that going forward the chances of getting a silverlight plugin are... smallish
09:29 brrt ... orly
09:29 brrt so soon in fact
09:29 brrt well
09:29 brrt recompile to java
09:29 brrt and run it as an applet :-p
09:29 sorear OTOH Mono supports NaCl and that looks like it might be gaining tractiohn
09:29 shachaf Wait, Silverlight is dead?
09:29 * shachaf didn't hear about that.
09:31 moritz std: sub foo(\) { }
09:31 p6eval std 235f71b: OUTPUT«ok 00:00 42m␤»
09:31 moritz std: sub foo(Mu \) { }
09:31 p6eval std 235f71b: OUTPUT«ok 00:00 42m␤»
09:36 sorear seems my info may be wrong
09:37 sorear _moonlight_ is dead, but silverlight may be hanging on
09:38 sorear http://www.infoq.com/news/2012/05/Miguel-Moonlight
09:54 mscha joined #perl6
09:55 mscha perl6: my @arr = 1..*; say @arr.perl;
09:55 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«(timeout)»
09:56 moritz p6: my @arr := 1..*; say @arr.perl
09:56 p6eval rakudo c07eba, niecza v19-21-gc86e8e5: OUTPUT«1..Inf␤»
09:57 dalek rakudo/sigilless: 105cec6 | moritz++ | src/ (2 files):
09:57 dalek rakudo/sigilless: switch SAFE and CORE to sigilless params
09:57 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/105cec6170
09:57 dalek rakudo/sigilless: f75de7d | moritz++ | src/core/Mu.pm:
09:57 dalek rakudo/sigilless: remove the last use of \$foo from the setting
09:57 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/f75de7db26
09:57 dalek rakudo/sigilless: dfff492 | moritz++ | docs/ROADMAP:
09:57 dalek rakudo/sigilless: update ROADMAP
09:57 dalek rakudo/sigilless:
09:57 dalek rakudo/sigilless: sigilless params are done; sigilless variables are still TODO
09:57 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/dfff492edf
09:57 dalek rakudo/sigilless: 86bc703 | moritz++ | src/Perl6/Grammar.pm:
09:57 dalek rakudo/sigilless: allow typed \ and | in signatures without a name
09:57 dalek rakudo/sigilless: review: https://github.com/rakudo/rakudo/commit/86bc703828
10:00 mscha @moritz: is that a Perl6 bug, or a PBCAK?
10:00 moritz jnthn, pmichaud: the 'sigilless' branch works, and builds without warning. It emits compile-time warnings on \$foo and |$foo in signatures, but they continue to work. Should I merge? Or wait until after the release?
10:00 moritz mscha: PBCAK
10:01 moritz mscha: my @a = 1..* flattens out the range
10:01 mscha OK.  It is a bit unexpected though, since "my @arr = 1..*; say @arr[123];" works just fine.
10:02 moritz well, because 123 is *finite*
10:02 mscha perl6: my @a = 1..*; say @a[123];
10:02 SHODAN joined #perl6
10:02 p6eval niecza v19-21-gc86e8e5: OUTPUT«(timeout)»
10:02 p6eval ..rakudo c07eba: OUTPUT«124␤»
10:02 sorear sleep&
10:02 moritz but @a has *infinitely+ many elements, and .perl needs to consult them all to reproduce the array
10:02 mscha Well, it does in my local Rakudo...
10:02 moritz s/\+/*/
10:02 moritz it worked here too
10:02 mscha 2012.04.1
10:02 moritz niecza timed out
10:02 mscha Ah, yes..
10:03 moritz r: my @a = 1..*; say @a.infinite
10:03 p6eval rakudo c07eba: OUTPUT«True␤»
10:03 jnthn moritz: I'd like to make it possible to use the new syntax ASAP. One conservative option: merge now without the warning, ship this release with the new syntax and old both working and a note (if anybody reads 'em) in the release notes about this, turn on the warning after the release so the next release goes out with it, then toss it completely in whatever release we feel comfy doing so.
10:03 moritz jnthn: ok, I'll do that
10:04 moritz hm, Array.perl could fail gracefully when it's knon-infinite
10:04 jnthn moritz: After pmichaud weighs in we may end up with the warning in this upcoming release anyway.
10:04 jnthn moritz: But there's pretty much no downsides to making the new syntax available right away.
10:04 moritz jnthn: one of the perl 5 folks mentioned that deprecation warnings only work if they are on by default
10:05 moritz jnthn: which is why I have it on now, but I'm fine with switching it off too
10:05 moritz let's wait for pmichaud++
10:05 moritz I'm not particularly attached to either way
10:06 moritz (and a tiny part of me says "we got almost no feedback on how to manage breaking changes across releases, so nobody care. Screw 'em")
10:07 tadzik hello #perl6
10:07 shachaf hi tadzik
10:08 * moritz wonders if now would be a good time to introduce warnings from the compiler
10:08 moritz all the infrastructure should be in place for it
10:09 mscha joined #perl6
10:09 moritz on a partially related note, I've been wondering if the default exception printer should simply call $ex.?autoresume at the end
10:10 moritz and warnings and anything else which wants to be resumed just provides such a method that dtrt
10:11 ChoHag How hard would it be to create a class which looks, acts and quacks like a basic type (an Array)?
10:12 ChoHag Functionality will be added and/or changed but not until stage 2.
10:12 arnsholt moritz: Sounds like a good idea to me
10:12 arnsholt Makes it simple to create your own warning-likes
10:13 moritz ChoHag: in principle rather easy
10:13 moritz ChoHag: except that Array is lazy, which makes its reimplementation possibly non-trivial
10:13 ChoHag Well yes, but that's just perl's tagline.
10:13 moritz ChoHag: depends on how much it should quack like the original :-)
10:14 jnthn moritz: What sort of "right things" are you pondering?
10:14 ChoHag That's why I want to extend it rather than rewrite it.
10:14 moritz jnthn: just resume, for now
10:14 ChoHag At least in part just to learn how to do it.
10:14 moritz ChoHag: what kind of extensions do you have in mind?
10:15 moritz anyway, responding to [] indexing is just done by implementing methods
10:15 ChoHag Primarily simulating a 'real' singly-linked list.
10:15 jlhg joined #perl6
10:15 jlhg left #perl6
10:18 ChoHag The first (and so far only) thing they can do which I need is the ability to share structure (without copying).
10:18 moritz funny enough, Arrays can do that too (to some extend) :-)
10:18 moritz at least, as implemented in Rakudo
10:19 moritz because Array is implemented as a "reified" (already evaluated) part, and tree of iterators that produce the rest of the elements
10:20 birdwindupbird joined #perl6
10:21 moritz http://code.google.com/p/anic/ # sounds interesting
10:21 MayDaniel joined #perl6
10:22 * jnthn sticks various Perl 6 days into his schedule, to ensure there's at least a day of tuits most weeks through to the end of the year
10:23 masak jnthn: oh, $boss told you too, eh? :)
10:24 masak r: say 8.00 % 12 == 20.00 % 12
10:24 p6eval rakudo c07eba: OUTPUT«True␤»
10:25 jnthn masak: ;-)
10:25 moritz jnthn++ tore++
10:25 jnthn moritz: ooh
10:26 jnthn Also, if everything on my schedule actually happens, autumn is gonna be crazy busy.
10:26 ChoHag So how do I go about implementing the necessary operators?
10:26 ChoHag Or rather, telling perl to use the right ones.
10:26 moritz ChoHag: which operators are you thinking of
10:27 ChoHag At first, assignment.
10:27 ChoHag my ExtendedArray $foo = [0..*];
10:27 ChoHag @foo, rather.
10:27 jnthn You can't @foo if you want to use = there
10:27 moritz ChoHag: you do it differently
10:28 jnthn You need to more like
10:28 moritz ChoHag: my @foo := ExtendedArray.new
10:28 jnthn Right, then implement method STORE, I believe.
10:28 moritz ChoHag: and then list assignment calls the method STORE on that object
10:28 ChoHag So I can't just say this type is an array in every sense of the word except for these extra bits?
10:29 moritz that's exactly what   my @foo := ExtendedArray.new  does
10:29 ChoHag Oh OK.
10:29 ChoHag But I can't do it in the definition of ExtendedArray instead>
10:29 moritz "look, it's an array, and use it as such, but please initialize it with an object of ExtendedArray instead of Array"
10:29 ChoHag I see.
10:30 moritz there's no easy way to associate the @ sigil with a different default object
10:30 jnthn In the future it should also be possible to say
10:30 moritz s/object/array type/
10:30 jnthn my @foo is ExtendedArray = ...;
10:30 moritz lunsj&
10:30 jnthn I didn't implement variable traits yet. Maybe I'll be able to figure out what I'm missing on them while at YAPC.
10:31 ChoHag So 'my Array @foo = [0..*]' becomes 'my @foo := ExtendedArray.new; @foo = [0..*]'?
10:31 ChoHag Or 'my @foo is ExtendedArray = [0..*]' apparently.
10:32 jnthn Yes, the "is" will mean "bind an instance of this type instead"
10:32 jnthn my @foo = 1,2,3; really is doing more like (my @foo := Array.new) = 1,2,3;
10:33 ChoHag That explains a lot.
10:33 ChoHag Now to quickly shave this yak and learn more vim and I'll test it.
10:33 masak ChoHag: the type you put before '@foo' in the variable declaration is the type of the *elements*. same with hashes and functions.
10:34 ChoHag my Int @foo = 1,2,"a" works...
10:35 ChoHag Do I misinterpret 'elements'?
10:36 masak no, you got it right.
10:36 masak Rakudo gets it wrong sometimes.
10:36 masak n: my Int @foo = 1, 2, "a";
10:36 ChoHag O
10:36 p6eval niecza v19-21-gc86e8e5: OUTPUT«Potential difficulties:â�¤  @foo is declared but not used at /tmp/OSRXkfMTt6 line 1:â�¤------> [32mmy Int [33mâ��[31m@foo = 1, 2, "a";[0mâ�¤â�¤Â»
10:36 masak n: my Int @foo = 1, 2, "a"; say @foo.perl
10:36 p6eval niecza v19-21-gc86e8e5: OUTPUT«[1, 2, "a"].list␤»
10:36 masak and apparently Niecza as well.
10:49 ChoHag Hmm well now the quacks like a duck code is so simple I've no idea how to extend it :)
10:50 jdrab joined #perl6
10:50 cognominal joined #perl6
10:51 ChoHag Does it make sense to override operators within or without the class definition block?
10:51 masak outside of it, I'd say.
10:51 masak operators are functions and functions are lexically scoped by default.
10:53 cognominal joined #perl6
10:55 ChoHag I keep getting my []s and ()s mixed up.
10:58 masak matter of habit.
10:59 masak the ()s are "softer" than the []s. just as List is "softer" than Array.
10:59 ChoHag r: class Foo is Array; my @x is Foo = 0..5; say @x ~~ Foo;
10:59 p6eval rakudo c07eba: OUTPUT«False␤»
10:59 ChoHag Um?
10:59 huf it's strange how these symbols become their own mnemonics after a while
11:00 huf @ feels array-y, even though there's nothing really obvious about the @
11:00 masak ChoHag: when you don't provide a block to the class declaration, the rest of the compilation unit is in that class.
11:00 ChoHag huf: It's curly.
11:00 ChoHag Ah. Yes I read that.
11:00 masak just so you know :)
11:00 ChoHag Stupid of me for seeing what happens when I remove it.
11:00 huf ChoHag: yes, but why are arrays curly? :)
11:00 ChoHag r: class Foo is Array{}; my @x is Foo = 0..5; say @x ~~ Foo;
11:00 p6eval rakudo c07eba: OUTPUT«===SORRY!===␤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, :rw(:$rw)!)␤:(Rout…
11:00 ChoHag Well close enough.
11:00 huf i feel the same way btw, but i dont know why :)
11:01 huf i think it's just the result of years and years of perl on the brain
11:01 ChoHag They coil up like DNA?
11:02 ChoHag I still get the same thing if I remove the ; and put {} (with or without newlines and other assorted whitespace).
11:03 ChoHag Like I tried above, but not on one line.
11:04 ChoHag Doesn't seem to matter what I inherit Foo from.
11:09 rvchangue joined #perl6
11:23 kresike joined #perl6
11:26 colomon r: class Foo is Array{}; my @x := Foo.new; say @x ~~ Foo
11:26 p6eval rakudo c07eba: OUTPUT«===SORRY!===␤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, :rw(:$rw)!)␤:(Rout…
11:27 colomon n: class Foo is Array{}; my @x := Foo.new; say @x ~~ Foo
11:27 p6eval niecza v19-21-gc86e8e5: OUTPUT«[31m===[0mSORRY![3​1m===[0mâ�¤â�¤Superclasses cannot have parameters at /tmp/svjMfwLGmP line 1:â�¤------> [32mclass Foo is Array{}[33mâ��[31m; my @x := Foo.new; say @x ~~ Foo[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.sett…
11:27 colomon std: class Foo is Array{}; my @x := Foo.new; say @x ~~ Foo
11:27 p6eval std 235f71b: OUTPUT«ok 00:00 43m␤»
11:27 jnthn r: class Foo is Array {}; my @x := Foo.new; say @x ~~ Foo
11:27 p6eval rakudo c07eba: OUTPUT«True␤»
11:27 colomon ah
11:29 topo rn: multi t(@a, $b) { @a, $b }; multi t($x, $y) { $x, $y }; t <1 2 3>, 4; say 'ok'
11:29 p6eval rakudo c07eba: OUTPUT«ok␤»
11:29 p6eval ..niecza v19-21-gc86e8e5: OUTPUT«Unhandled exception: Ambiguous call to &t; these signatures all match:␤    Any, Any␤    Any, Any␤  at /tmp/SjrCDwsiD4 line 1 (mainline @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3929 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3930…
11:30 jnthn rakudo++
11:32 gfldex is there any way to ask a token what char it is looking at when it fails?
11:33 spider-mario joined #perl6
11:33 masak gfldex: something with $/.to, perhaps?
11:35 jnthn r: my token t { [ abc || { die $/.orig.substr($/.CURSOR.pos, 1) } ] }; say 'abc' ~~ /<&t>/; say 'def' ~~ /<&t>/
11:35 p6eval rakudo c07eba: OUTPUT«「abc」␤␤d␤  in regex t at /tmp/q1B7ee6v_d:1␤  in method INTERPOLATE at src/gen/CORE.setting:9872␤  in regex  at /tmp/q1B7ee6v_d:1␤  in method ACCEPTS at src/gen/CORE.setting:9929␤  in block  at /tmp/q1B7ee6v_d:1␤␤»
11:38 masak jnthn++
11:39 jnthn Or if you fancy typing it, the cent char in place of $/.CURSOR :)
11:43 masak :/
11:45 jnthn .oO( It makes no cents to masak )
11:46 dalek Heuristic branch merge: pushed 34 commits to rakudo/nom by moritz
11:47 moritz that's the merge of sigilless, with warnings commented out
11:48 jnthn moritz++
11:48 jnthn moritz: Did we regress that constants.t test, or did it get fixed?
11:48 moritz jnthn: I fux it
11:49 moritz erm, fixed :-)
11:49 moritz regular verbs are overrated
11:49 jnthn *lol*
11:49 jnthn oh wtf
11:50 jnthn Visual Studio 2012. They wrote all of the menu names in the menu bar in CAPITAL LETTERS
11:50 moritz yes, that's been on reddit a while ago
11:50 gfldex $/.CURSOR.pos seams to point at the beginning of the previous successful match
11:50 gfldex in my case that is
11:50 moritz because, you know, they say it's easier on the eye. GOOD TYPOGRAPHY
11:51 gfldex or vim lies about the chars number under my cursor
11:51 PacoAir joined #perl6
11:53 gfldex perl6++ made me learn vim
11:53 gfldex but i'm not sure if that is good or evil karma
11:54 masak 'fux'++
11:55 jnthn moritz: Yeah, I hadn't imagined how much I'd dislike it until I have it here in front of me.
11:55 dalek rakudo/nom: 449f30f | moritz++ | docs/ChangeLog:
11:55 dalek rakudo/nom: update ChangeLog
11:55 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/449f30fc0c
11:57 masak jnthn: it's like if you go to a restuarant and the waiter says "WOULD YOU LIKE SOMETHING TO DRINK WHILE YOU LOOK AT THE MENU?"
11:59 jnthn ChangeLog is looking quite nice :)
11:59 masak it's not release week yet, is it? :)
12:00 jnthn no :)
12:00 jeffreykegler joined #perl6
12:03 dalek rakudo/nom: de84a76 | jnthn++ | docs/ChangeLog:
12:03 dalek rakudo/nom: Some more ChangeLog bits.
12:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/de84a7695a
12:11 masak what's the name of moritz++' release bot again? is it online?
12:12 jnthn p6rd
12:13 masak and not online.
12:13 masak thanks.
12:21 tadzik modules.perl6.org says "send an email to the perl6-compiler@perl.org mailing list". That may not be the most appropriate ML
12:21 masak perl6-users@perl.org, p'haps?
12:21 tadzik problly
12:54 rjh joined #perl6
12:54 rjh nr: say 5, { $_ * 2 } ... 41
12:54 p6eval rakudo de84a7, niecza v19-21-gc86e8e5: OUTPUT«(timeout)»
12:54 rjh nr: say 5, { $_ * 2 } ... 40
12:54 p6eval rakudo de84a7, niecza v19-21-gc86e8e5: OUTPUT«5 10 20 40␤»
12:55 mhasch oops :-)
12:55 lichtkind joined #perl6
12:55 rjh so it checks for equality?
12:55 jnthn The termination conditions must be matched exactly.
12:55 rjh perl can't know the sequence increases, got it
12:55 jnthn Uses smart-matching, which on a number does an equality check.
12:56 colomon nr: say 5, * * 2 ... * > 41
12:56 p6eval rakudo de84a7, niecza v19-21-gc86e8e5: OUTPUT«5 10 20 40 80␤»
12:56 colomon nr: say 5, * * 2 ...^ * > 41
12:56 p6eval rakudo de84a7, niecza v19-21-gc86e8e5: OUTPUT«5 10 20 40␤»
12:56 rjh neat!
12:58 REPLeffect joined #perl6
13:00 PacoAir joined #perl6
13:05 Vlavv_ joined #perl6
13:11 bluescreen10 joined #perl6
13:13 flussence joined #perl6
13:23 pmichaud good morning, #perl6
13:23 phenny pmichaud: 14 Aug 23:08Z <raiph> tell pmichaud the 5 appears on supervisor's tees which are yellow, not the tees for sale; if you are getting yellow tees for sale with a big 6 on them, i think u should let the organizers know asap
13:23 jnthn o/ pmichaud
13:24 pmichaud phenny: tell raiph  I don't have any yellow tees; I specially didn't get yellow to avoid confusion with the staff tees.
13:24 phenny pmichaud: I'll pass that on when raiph is around.
13:25 jnthn pmichaud: Flight for you this afternoon/evening?
13:26 pmichaud afternoon; flight leaves in seven hours
13:26 jnthn k
13:27 pmichaud so I leave for the airport in about 5.5 hours :)
13:27 jnthn :)
13:27 masak pmichaud! \o/
13:27 pmichaud well, 5 hours
13:27 jnthn Look forward to seeing you tomorrow :)
13:27 pmichaud same here
13:27 * jnthn is flying about this time tomorrow
13:27 * masak .oO( are the staff only for Perl 5 people? )
13:28 pmichaud moritz: I'm happy with merging sigilless whenever you wish, with or without warnings as you think best.
13:29 pmichaud at the moment I'm inclined to "with warnings", but I can see going the other way.  If it's easy to turn them on/off then lets merge and we can make the warn/nowarn decision before the release
13:29 sirrobert joined #perl6
13:31 sirrobert jnthn: ping
13:31 jnthn sirrobert: pong
13:31 sirrobert hey
13:32 sirrobert Sorry I had to leave abruptly yesterday.  Any chance I could show you what's happening with my nativecall problem and we could look for a fix>?
13:32 jnthn sirrobert: How new is your Rakudo build?
13:32 sirrobert I rebuilt it yesterday
13:32 mhasch who can get pmichauds cool p6 t-shirts?
13:32 jnthn From git?
13:33 sirrobert from rakudo-star-2012.07.tar.gz
13:33 sirrobert on github
13:33 jnthn But...that includes NativeCall and DBIish.
13:33 sirrobert hmmmmmmmmm
13:33 sirrobert ok, one sec
13:34 sirrobert whug.  heh
13:34 sirrobert I didn't try to use DBIish.  I just tried to install it (and it failed)
13:34 sirrobert thanks =)
13:34 sirrobert ha
13:34 sirrobert well, for whatever it's worth, panda can't install NativeCall right now =)
13:34 sirrobert or DBIish (at least on my setup)
13:35 jnthn It probably can't with the rakudo-star-2012.07
13:35 sirrobert Just tried use DBIish and it's fine.  jnthn++; sirrobert--;  plbth
13:35 sirrobert ok
13:35 jnthn NativeCall has been undergoing quite a lot of development
13:35 sirrobert ok, good to know =)
13:35 jnthn And it depends on very recent commits to Rakudo's git repo.
13:36 jnthn (as in, since the last Star release)
13:36 sirrobert well, I'll use the included version.  Thankfully that works =)
13:37 cognominal joined #perl6
13:37 dalek perl6-examples: d692b61 | (Ryan Connelly)++ | 99-problems/P (20 files):
13:37 dalek perl6-examples: Made almost everything in 99-problems run in both niecza and rakudo.
13:37 dalek perl6-examples:
13:37 dalek perl6-examples: All changes were minor: most were fixes to logic
13:37 dalek perl6-examples: and a couple to Pod errors.
13:37 dalek perl6-examples:
13:37 dalek perl6-examples: P08-viklund and P13-viklund:
13:37 dalek perl6-examples: I couldn't get these to run without completely
13:37 dalek perl6-examples: altering their code, so I just left them alone.
13:37 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/d692b614d9
13:37 masak whoa.
13:38 masak whose nick do I ++ ?
13:38 * topo waves his arms around
13:38 masak topo++!
13:38 masak karma topo
13:38 aloha topo has karma of 2.
13:38 masak topo++ topo++
13:38 topo :D
13:38 jnthn topo++
13:39 jnthn sirrobert: Yes, we try and make it so the stuff in Rakudo Star works together :)
13:39 sirrobert heh nod
13:39 pmichaud mhasch: I'll have one or two extra shirts at yapc::eu with me; otherwise I'll be uploading the graphics to cafepress/spreadshirt/zazzle sometime today/tomorrow
13:42 arnsholt sirrobert: Yeah, you'll need to use the latest Rakudo from git to get it working
13:43 arnsholt I'm not sure the code you're having trouble with even existed when the 2012.07 release was made =)
13:43 sirrobert arnsholt:  thanks
13:43 mhasch pmichaud++: good to know, thanks
13:43 sirrobert arnsholt: I ended up getting it working (because there's a copy that comes with star)
13:44 arnsholt Yeah, that'll do it as well
13:44 cognominal joined #perl6
13:47 skids joined #perl6
13:48 pmurias_ joined #perl6
13:54 kaare__ joined #perl6
13:55 cognominal_ joined #perl6
14:00 [Coke] me yawns.
14:07 cognominal joined #perl6
14:12 tadzik sirrobert++ # Acme::Meow bughunting
14:18 arnsholt jnthn: Some days back, you said there should be some wiring ready for different sized ints called native_size, but I can't seem to find it
14:18 arnsholt Where should I be looking?
14:19 jnthn src/core/natives.pm
14:20 arnsholt Right, there it is
14:20 arnsholt Grepped for the wrong thing ^_^
14:21 [Coke] jnthn: rakudo has parse support for native type 'str', but std doesn't.
14:21 [Coke] (and there are spec tests for 'my str', also.)
14:22 sirrobert tadzik: heh
14:22 sirrobert doing some pair programming to train and we came across it =)
14:23 [Coke] ah, and the specs do specifically disavow <str>.
14:23 jnthn [Coke]: Needs further discussion.
14:23 [Coke] rakudo: my barf $foo;
14:23 p6eval rakudo de84a7: OUTPUT«===SORRY!===␤Malformed my␤at /tmp/14ONBypZ7U:1␤»
14:23 tadzik sirrobert: http://cdn.memegenerator.net​/instances/400x/24111566.jpg :)
14:24 [Coke] ok. do we have any way of marking that? seems like a comment in roast near the "my str" tests seems best.
14:24 [Coke] or perhaps a spec-rfc.
14:26 * [Coke] adds it to his local cleanup list for now.
14:27 [Coke] std: my $x = "3"; { use v5; $x .= "hi" } ; $x.say
14:27 p6eval std 235f71b: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of . to concatenate strings or to call a quoted method; in Perl 6 please use ~ to concatenate, or if you meant to call a quoted method, please supply the required parentheses at /tmp/Olua7HkKmM line 1:�------> [32mmy $x…
14:27 [Coke] there's a roast test for that.
14:28 * PerlJam wonders how difficult it would be to add sized (shaped) arrays
14:29 pmurias joined #perl6
14:31 * [Coke] finds "use v5" in the spec, so that's a std bug, methinks.
14:38 TimToady that's a nyi, since it involves the entire Perl 5 grammar...
14:38 alester joined #perl6
14:43 moritz r: sub f(\x) { say x }; f 42
14:43 p6eval rakudo de84a7: OUTPUT«42␤»
14:44 moritz pmichaud: I've merged now, without the warnings. Enabling warnings is very easy (remove two # characters in Grammar.pm)
14:46 * [Coke] ponders adding fudge like std directives to roast.
14:46 [Coke] #?std todo 'perl5 grammar NYI'
14:47 dalek doc: 1f58d8d | moritz++ | lib/operators.pod:
14:47 dalek doc: [operators] and, andthen, or
14:47 dalek doc: review: https://github.com/perl6/doc/commit/1f58d8dd6a
14:54 kresike bye all
14:54 sirrobert wave
14:55 jeffreykegler joined #perl6
14:58 masak [Coke]: couldn't hurt.
15:00 pmichaud moritz++  # sigilless merge
15:00 jnthn My brain keeps parsing that as "silliness"
15:01 masak enough of this sigilless!
15:01 masak :P
15:01 * pmichaud fears a monty python sequence here.
15:01 moritz ministry of siglless walks!
15:02 pmichaud "Stop that... that's sigilly!"
15:02 sirrobert heh
15:02 pmichaud "Let us leave #perl6, it is a sigilly place."
15:03 masak :D
15:03 * masak .oO( *leave* #perl6!? )
15:04 * TimToady is leaving for SJC -> SEA -> LUX about now...
15:05 masak "The core developer can leave #perl6, but #perl6 never leaves the core developer..."
15:05 jnthn TimToady: Safe flight
15:05 BinGOs sounds painfull
15:05 pmichaud yeah, I leave   DFW->AMS->LUX in about 3.25 hrs
15:05 masak alternatively, "You can 'git co' any time you like, but you can never leave."
15:05 pmichaud masak++ masak++
15:05 pmichaud *that's* good.
15:06 moritz aye, masak++
15:06 pmichaud TimToady: safe flights -- see you on the other side
15:07 BinGOs LUX being Luxembourg ?
15:07 moritz aye
15:07 BinGOs cool.
15:07 * masak is reminded of http://abstrusegoose.com/77
15:08 jnthn .oO( Glad it's not LAX, that'd be fishy )
15:08 moritz \o/ # somebody else brining up abstuse goose references
15:09 p6rd joined #perl6
15:09 masak ooh, and I hadn't seen http://popstrip.com/fuck-heisenberg before :D
15:09 masak p6rd: hi!
15:09 p6rd Perl 6 release dates. Usage: p6rd: [ 'next' | 'next month' | YYYY-MM | YYYY-MM-DD ]
15:09 masak p6rd: next
15:09 p6rd parrot 2012-08-21, rakudo 2012-08-23, niecza 2012-08-27
15:09 masak thanks! :)
15:09 moritz you're welcome
15:09 masak moritz++
15:10 masak p6rd: next month
15:10 p6rd parrot 2012-09-18, rakudo 2012-09-20, niecza 2012-09-24
15:10 timotimo masak: you might enjoy http://dresdencodak.com/2005/06/14/lil-werner/
15:11 pmichaud ah yes, I need to get the nqp and star release notes updated
15:11 pmichaud who is doing this month's compiler release?
15:11 moritz tadzik++ does
15:11 tadzik I do :)
15:12 masak ++tadzik
15:12 pmichaud okay, good.  I may do the star release once more to firm up the release process and notes
15:12 tadzik (: do I
15:12 pmichaud unless someone else _really_ wants to do the star release
15:12 pmichaud it'll be nice to have some time to focus on p6 again after doing so much LEGO robotics lately :)
15:13 * masak sings "tadzik's gonna update the TAAAAAI, and then he's gonna do the releeeease..."
15:13 hoelzro if I wanted to set up a Rakudo development environment, where should I install nqp HEAD?
15:14 colomon LEGO robotics?!?
15:14 hoelzro I was thinking of ~/rakudo-dev, but I can't seem to coax NQP into installing itself there =(
15:14 jnthn hoelzro: I just use --gen-parrot and then twiddle the URLs in the .git/config of the checkout of nqp
15:14 * colomon reflects that ?!? suggests too much puzzlement and not enough excitement.  :)
15:15 benabik colomon: Maybe you should have just used three interrobangs?
15:15 masak colomon: also, does the order matter? are you puzzled over being excited about your puzzlement?
15:15 sftp joined #perl6
15:16 colomon really, more "please say more" than puzzled.  and excited at the prospect his boy might be interested in that in a few years, instead of just building Duplo astromech droids.
15:17 pmichaud colomon: our kids are on a LEGO robotics team, and we were one of 30 winners in the GLXP "MoonBots" competition.   http://moonbots.org/teams/model-scout-robotics
15:17 colomon pmichaud: sweet!
15:18 hoelzro jnthn: I'm guessing nqp installs itself wherever parrot is found?
15:18 PerlJam pmichaud: but when will the robots be programmed in Perl 6?
15:18 PerlJam :-)
15:18 masak I should so get kids so that I can get them into LEGO robotics...
15:18 pmichaud yeah, we're on a pretty good winning streak.  :-)
15:19 colomon pmichaud: one of our friends coaches the local high school's robotics team, I think he said there was a LEGO program here for younger kids.
15:19 * masak .oO( don't port the robots to Perl 6 during the winning streak ) :P
15:19 jnthn hoelzro: yes
15:19 pmichaud although the .eu trip is _really_ making for a challenging schedule --   phase two of the competition is from aug 1 to sep 15, and I'm gone from aug 15 to aug 30.  :-/
15:20 moritz how do STD and niecza parse  my \foo = bar   ?
15:21 pmichaud I'm somewhat proud of our video entry for phase one.  :-)
15:21 pmichaud (especially since we made it to phase two :-)
15:22 moritz seems it's token declarator
15:22 masak pmichaud: do you have any tips on how to get involved in LEGO robotics with one's kids? besides buying a Mindstorms kit, I mean.
15:22 localhost joined #perl6
15:22 thelazydeveloper joined #perl6
15:22 pmichaud find a local FIRST LEGO League competition
15:23 pmichaud http://firstlegoleague.org/
15:23 jnthn moritz: in declarator
15:24 pmichaud we had a Mindstorms kit in the house for quite a long time, but didn't do much with it until we entered the FLL competition.
15:24 pmichaud the FLL competition is waaaay cool.  Registration for the 2012 contest is still open until mid September, I think.  :)
15:25 moritz s/2012/2013/ ?
15:25 pmichaud 2012
15:25 moritz oh
15:25 pmichaud the competition takes place fall/winter
15:25 thou joined #perl6
15:25 moritz ah, ok
15:26 pmichaud you can follow our progress on our website  (http://modelscoutrobotics.org/  gratuitous plug :-)
15:27 pmichaud and you can see the field mat for this year's competition there :)
15:27 moritz r: my \$x = 3;
15:27 p6eval rakudo de84a7: OUTPUT«===SORRY!===␤Malformed my␤at /tmp/6Yd9c_z1Np:1␤»
15:27 moritz n: my \x = 3; say x; x = 5; say x
15:27 p6eval niecza v19-21-gc86e8e5: OUTPUT«3␤Unhandled exception: Writing to readonly scalar␤  at /tmp/W96VrlkneC line 1 (mainline @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3929 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3930 (module-CORE @ 564) ␤  at /home/p6eval/niecza/…
15:28 jeffreykegler joined #perl6
15:28 moritz n: sub f(\x) { x = 42 }; f my $y = 3; say $y
15:28 p6eval niecza v19-21-gc86e8e5: OUTPUT«42␤»
15:28 pmichaud PerlJam: I don't know when the robots will be programmed in P6.  But a couple of days ago @kid[1] figured out how to write a text-based interpretive language using NXT-G (the graphical language that comes with MindStorms)
15:28 moritz n: my \x = 3; say x; x := 5; say x
15:28 p6eval niecza v19-21-gc86e8e5: OUTPUT«3␤5␤»
15:29 moritz pmichaud: I thought there was a "Not Quite C" compiler floating around for mindstorm for quite some time
15:29 * colomon suspects it needs a good Forth...
15:30 moritz (which I'd use in an instant, becuase the grafical IDE was just unusable when I tried it years ago)
15:30 pmichaud I know that NQC was available for the RCX brick; I'm not sure that it works for the NXT.
15:30 pmichaud (it might -- I just don't know).
15:30 colomon pmichaud++ # hoping I can follow in your footsteps in a few years.
15:30 * moritz wants too
15:30 pmichaud But FLL restricts programming to using NXT-G or LabView, alas.
15:31 moritz can't you do some C-like things with LabView too?
15:31 pmichaud hmmm, or maybe it was RoboLab instead of LabView.
15:31 * pmichaud checks
15:32 pmichaud ah, RoboLab.
15:33 moritz is RoboLab graphical too?
15:34 cognominal joined #perl6
15:34 tlocalhos joined #perl6
15:35 jeffreykegler pmichaud: Dunno if you caught my report last night, but I found out the answer to your question about the "big car show"
15:35 jeffreykegler pmichaud: it was the operator precedence parse, not the LL one
15:36 pmichaud jeffreykegler: good deal, thanks!  :-)
15:36 localhost joined #perl6
15:36 moritz n: our \a = 5; say a
15:36 p6eval niecza v19-21-gc86e8e5: OUTPUT«5␤»
15:36 moritz n: package A { our \b = 5 }; say A::b
15:36 p6eval niecza v19-21-gc86e8e5: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Any␤  at /tmp/WJ65GG9uHc line 1 (mainline @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3929 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3930 (module-CORE @ 564…
15:37 jnthn o.O
15:37 jnthn That doesn't look right.
15:37 jnthn n: package A { our $b = 5 }; say $A::b
15:37 p6eval niecza v19-21-gc86e8e5: OUTPUT«5␤»
15:38 jnthn n: package A { constant $b = 5 }; say $A::b
15:38 p6eval niecza v19-21-gc86e8e5: OUTPUT«Potential difficulties:â�¤  $b is declared but not used at /tmp/VpRj7cU37s line 1:â�¤------> [32mpackage A { constant $b [33mâ��[31m= 5 }; say $A::b[0mâ�¤â�¤5â�¤Â»
15:38 jnthn n: package A { constant b = 5 }; say $A::b
15:38 p6eval niecza v19-21-gc86e8e5: OUTPUT«Any()␤»
15:38 jnthn n: package A { constant b = 5 }; say A::b
15:38 p6eval niecza v19-21-gc86e8e5: OUTPUT«5␤»
15:38 jnthn r: package A { constant b = 5 }; say A::b
15:38 p6eval rakudo de84a7: OUTPUT«5␤»
15:43 snearch joined #perl6
15:48 moritz jeffreykegler: http://www.perlmonks.org/?node_id=987575
15:49 pmichaud Yes, I believe RoboLab is graphical also.
15:51 jeffreykegler moritz: thanks
15:52 moritz hm, setting isn't parsed after 5 minutes (on my laptop) :(
15:53 moritz but it worked fine on the server where I developed sigilless, and apparently also on p6eval
15:54 moritz r: say 1
15:54 p6eval rakudo de84a7: OUTPUT«1␤»
15:54 moritz same revision as I try to build
15:54 * moritz uses git clean -xdf
15:55 jnthn moritz: kicking off a build here
15:59 moritz Stage parse      : 256.720
15:59 moritz huh, I kinda thought it used to be faster on that machine
15:59 arnsholt Yeah, I think there's been some kind of slowdown recently
15:59 jnthn moritz: Uh, it worked, but...crazily slowly
15:59 arnsholt Noticed the same thing today on my work machine
16:00 moritz arnsholt: can you qualify "recently" a bit more? today?
16:00 arnsholt Yeah, today
16:00 jnthn I last commited on the 11th and it wasn't slow then.
16:01 arnsholt Didn't do any more checking than making sure it wasn't the NQP stuff I'm working on ATM
16:01 brrt left #perl6
16:01 jnthn moritz: Could it be the new regex quoter thingy?
16:02 jnthn 94aa2b7
16:02 moritz jnthn: nope, that's just Match.gist
16:02 moritz oh
16:02 moritz you mean
16:02 moritz because it's a codepoing > 255 ?
16:02 jnthn We still have issues parsing higher code-points in the setting for some reason.
16:02 moritz *point
16:02 moritz :(
16:03 jnthn I thought with QRegex we'd not, but we do :(
16:03 moritz .u 「
16:03 phenny U+FF62 HALFWIDTH LEFT CORNER BRACKET (「)
16:03 moritz .u 」
16:03 phenny U+FF63 HALFWIDTH RIGHT CORNER BRACKET (」)
16:03 moritz r: say "\x[FF62]"
16:03 p6eval rakudo de84a7: OUTPUT«「␤»
16:04 pmichaud is it in the setting or in the grammar?
16:04 moritz setting
16:04 pmichaud that seems very odd... something must not be working as I expect.
16:04 moritz testing with \x[...] now instead of the literals
16:05 moritz I hope it's that, and not the sigilless branch
16:05 moritz (which only changed token parameter, and not in a pathologic way I hope)
16:07 moritz yes, seems to fix it
16:07 jnthn The order of magnitude fits what I saw when I put the set ops in
16:07 moritz jnthn++ # for diagnosis
16:08 dalek rakudo/nom: e326148 | moritz++ | src/core/Match.pm:
16:08 dalek rakudo/nom: avoid codepoints above 255 in the setting
16:08 dalek rakudo/nom:
16:08 dalek rakudo/nom: reverts the factor ~2 parse slowdown of the setting introduced in 94aa2b7
16:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e326148fd9
16:19 birdwind1pbird joined #perl6
16:20 crab2313 joined #perl6
16:21 pmichaud I'll look at that this weekend.
16:21 pmichaud QRegex was really supposed to have fixed that.
16:23 bluescreen10 joined #perl6
16:23 moritz n: my Str \foo = 42
16:23 p6eval niecza v19-21-gc86e8e5:  ( no output )
16:24 moritz n: my Str \foo = 42; say foo
16:24 p6eval niecza v19-21-gc86e8e5: OUTPUT«42␤»
16:24 moritz nieczabug
16:24 moritz n: my Str $foo = 42; say foo
16:24 p6eval niecza v19-21-gc86e8e5: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Undeclared routine:â�¤     'foo' used at line 1â�¤â�¤Potential difficulties:â�¤  $foo is declared but not used at /tmp/ahS6bsCovj line 1:â�¤------> [32mmy Str [33mâ��[31m$foo = 42; say foo[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /ho…
16:24 moritz n: my Str $foo = 42; say $foo
16:24 p6eval niecza v19-21-gc86e8e5: OUTPUT«Unhandled exception: Nominal type check failed for scalar store; got Int, needed Str or subtype␤  at /tmp/bI7ThoMyLk line 1 (mainline @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3929 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3930 …
16:25 jnthn n: my Str \foo = 'abc'; say foo; foo = 42; say foo;
16:25 p6eval niecza v19-21-gc86e8e5: OUTPUT«abc␤Unhandled exception: Writing to readonly scalar␤  at /tmp/YLziITGmnD line 1 (mainline @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3929 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3930 (module-CORE @ 564) ␤  at /home/p6eval/niecz…
16:25 sirrobert clean tests =)  implementing rapidly at the API level now
16:26 moritz std: my Str \x = 3
16:26 p6eval std 235f71b: OUTPUT«ok 00:00 41m␤»
16:26 Entonian joined #perl6
16:33 sorear good * #perl6
16:36 fgomez joined #perl6
16:44 colomon \o
17:01 nodmonkey joined #perl6
17:03 ChoHag How far away is perl 6 from a complete implementation, docs and all?
17:03 ChoHag Months, years or decades?
17:05 diakopter depends on your definition of complete (seriously)
17:06 diakopter there is a 6.0.0 *spec* milestone/freeze that hasn't yet been reached
17:06 diakopter generally expected to occur when TimToady & the implementors decide it's so
17:07 scottdware joined #perl6
17:08 diakopter implementations will probably still vary a bunch as to which subset of the total spec they implement, but they are expected to at least agree on 6.0.0
17:09 PerlJam ChoHag: "complete" isn't a useful enough metric IMHO.  That's why we tend to talk about "useful"
17:09 PerlJam We currently have a useful implementation (though not useful for some tasks)
17:10 PerlJam and a somewhat-useful-but-could-be-better set of documentation
17:10 benabik joined #perl6
17:11 PerlJam (I don't mean that we have only one useful implementation, just that we have at least once)
17:11 PerlJam er, one
17:12 masak ChoHag: I was slightly interested in the "when is it finished?" question when I started out with Perl 6. since then I've stopped caring, and started caring about "what can I do now and which things are within reach?" instead.
17:12 sorear masak!
17:12 masak sorear! \o/
17:20 kaare_ joined #perl6
17:21 raiph joined #perl6
17:25 raiph hi # obscure abbreviation for "good UGT morning everyone"
17:25 phenny raiph: 13:24Z <pmichaud> tell raiph  I don't have any yellow tees; I specially didn't get yellow to avoid confusion with the staff tees.
17:26 raiph pmichaud: coolio
17:30 masak raiph: why are the organizers carrying shirts with a huge "5" on them?
17:30 masak I don't get it.
17:33 raiph i think it means that they want to associate themselves with p5 -- explicitly not p or p6.
17:34 timotimo because perl6 is an abomination?
17:35 masak I find such a wish very interesting.
17:35 PerlJam so there's going to be self-proclaimed fivers and sixers identified by their t-shirts?
17:35 raiph i think that, from the perspective of many those working hard on p5 and not involved in p6, p6 is an embarrassment.
17:36 masak sorry to hear that.
17:36 timotimo perl5ers and perl6ers should also not be allowed to marry.
17:36 raiph heh
17:36 tadzik timotimo: I find suprising amount of negative emotion in your sentences, especially given the channel you're on
17:37 PerlJam raiph: is p6 an embarrassment because it took p6 to kickstart p5 again?  ;>
17:37 timotimo dunno, i'm weirded out by the thought of having people distance themselves from perl6 and perl5 respectively by wearing shirts
17:37 masak raiph: I don't want no trouble. I just seek to understand. thanks for helping me do so by clarifying.
17:38 tadzik timotimo: sorry, must've misunderstood you
17:38 timotimo i didn't speak very clearly, sarcams doesn't translate well to text i'm afraid
17:38 tadzik masak: I guess "5" is just the first Int that comes to people's mind when they think "Perl"
17:38 tadzik I don't think it's so Wrong and Evil
17:38 timotimo "because perl6 is an abomination?" was supposed to suggest why the perl5 people would want to distance themselves from perl6
17:38 tadzik I see
17:38 timotimo as in: their thoughts, not mine
17:39 masak raiph: at one point, we were a bunch of p6 people with no talks accepted for the conf. we wrote and asked, and eventually things worked out OK. I don't believe there was any malice or conspiracy.
17:40 masak raiph: similarly, I have no reason to believe "Perl huge 5" t-shirts are an explicit slight to those of us who associate with Perl 6. but it does send kind of a weird signal, as an organizer t-shirt.
17:40 masak "yes, we invited those Perl 6 people. but keep in mind that this is a Perl 5 event, nothing else."
17:41 raiph i think this yapc will be a great opportunity for p6ers to be simultaneously humble (re 5) and hubristic (re 6), lazy (let 5ers supervise) and hard working (find ways to help the staff), patient (with 5ers complaints) and impatient (make it clear we still want help)
17:41 benabik_ joined #perl6
17:42 timotimo i experienced quite a bit of flak personally when i mentioned i liked perl6 a lot
17:42 masak raiph: I hope so too.
17:42 scottdware do you think a lot of people could be afraid of "change" or the adoption of p6?
17:42 timotimo are there documents that teach perl5 to perl6 users? :)
17:43 PerlJam timotimo: flak from whom?  People on IRC?  Usenet?  PerlMonks?  ?
17:43 raiph masak: i try to avoid evaluation (malice) and stick to observation. there's a great big 5 on supervisor tees. there's a chance no one realized how that would look but i think it was deliberate. regardless i love them and know they'll be very pleased with p6 a few years from now so it's all ok.
17:44 timotimo one person in real life, multiple people in one specific irc channel
17:44 masak raiph: I concur.
17:44 huf *shrug* you get flak for using any kind of perl
17:44 tadzik true
17:44 huf in most programmer communities
17:44 fhelmberger joined #perl6
17:44 masak raiph: and in some sense, there's nothing wrong with being proud of Perl 5. I want to see more of that.
17:45 masak heck, I'm fine with people being loud and complaining about all the things that Perl 6 doesn't do as well as Perl 5. as long as it's constructive.
17:45 felher timotimo: http://perlgeek.de/blog-en/perl-5-to-6/
17:45 felher timotimo: oh ,sorry, the other way round :)
17:46 masak I'm mainly curious about what forces are behind the "5" ending up on organizers' t-shirts, and wondering whether it represents a new sentiment in the Perl communities that we should relate to somehow.
17:47 moritz i think that's best figured out when you're there
17:50 tadzik I still see nothing wrong with that
17:51 dalek rakudo/nom: b18ea07 | moritz++ | src/Perl6/ (2 files):
17:51 dalek rakudo/nom: sigilless variable declaration
17:51 dalek rakudo/nom:
17:51 dalek rakudo/nom: Currently only works for 'my' variables, and type constraints are ignored
17:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b18ea07b40
17:51 * [Coke] does not like this no sigil stuff. hurm.
17:53 PerlJam masak: I'd like to see yellow 5 shirts, red 6 shirts, and orange 5/6 shirts  :)
17:53 * colomon is with [Coke] on that
17:53 masak :D
17:53 masak n: say 5/6
17:53 PerlJam (well, I won't be there, but I'm sure there'd be pictures :)
17:53 p6eval niecza v19-21-gc86e8e5: OUTPUT«0.83333333333333337␤»
17:54 moritz there are downsides the no-sigil stuff, obviously
17:54 moritz if they happen to contain callables, you can't invoke them with var()
17:54 moritz for example
17:56 * masak is not too hot on no sigils, either
17:56 masak TIL: just as depth-first search is a kind of recursion, breadth-first search is a kind of corecursion
17:57 moritz that's kind of obvious if you write both as non-recursive variants
17:57 masak I guess so. then you'd use a stack for DFS and a queue for BFS.
17:58 moritz correct
17:58 moritz and the stack directly models the stack that's used for recursion
17:58 masak aye.
17:58 masak corecursion was first called "circular programming" :)
17:59 moritz and the queue models how the routines are called per-level
18:00 masak I guess the queue could be replaced by something "stratified": the nodes in one generation map to the nodes in the next to be processed.
18:03 moritz r: my Int $x := 'foo'; say 'alive'
18:03 p6eval rakudo e32614: OUTPUT«Type check failed in binding; expected 'Int' but got 'Str'␤  in block  at /tmp/EvuJQ5BDTB:1␤␤»
18:04 masak why does Rakudo say 'in block' there?
18:04 moritz r: sub f(Int \x) { say x }; f 'foo'
18:04 p6eval rakudo e32614: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'f' will never work with argument types (str) (line 1)␤    Expected: :(Int \x)␤»
18:04 moritz masak: because it doesn't mark the mainline in a way that the backtrace printer could recognize
18:05 moritz r: sub f(Int \x) { say x }; my $x = 'foo'; f $x
18:05 p6eval rakudo e32614: OUTPUT«Nominal type check failed for parameter 'x'; expected Int but got Str instead␤  in sub f at /tmp/bt18u0zIij:1␤  in block  at /tmp/bt18u0zIij:1␤␤»
18:06 masak moritz: it would be pretty cool if Rakudo marked the mainline in some way, so that the backtrace printer only printed useful information.
18:07 jnthn It has a magical lexical called !UNIT_MARKER
18:08 jnthn oh, but you can't see that in the bt I guess...
18:09 [Coke] r: sub f(\x) {say x.WHAT} ; f("U");
18:09 p6eval rakudo e32614: OUTPUT«Str()␤»
18:09 moritz jnthn: it would help to mix in a role into mainline code object, for example
18:09 [Coke] r: sub f(\x) {say x.WHAT} ; f(sub{say "U"});
18:09 p6eval rakudo e32614: OUTPUT«Sub()␤»
18:09 [Coke] r: sub f(\x) {x()} ; f(sub{say "U"});
18:09 p6eval rakudo e32614: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&x' called (line 1)␤»
18:10 [Coke] r: sub f(\x) {x.()} ; f(sub{say "U"});
18:10 p6eval rakudo e32614: OUTPUT«U␤»
18:10 jnthn moritz: Oh, you can get at the code object?
18:11 moritz jnthn: aye
18:11 moritz jnthn: that's how we figure out if it's a block, method, sub etc.
18:13 pmichaud okay, I'm off to the airport.  See some of you tomorrow.
18:13 moritz pmichaud: good flight, good travel
18:13 felher why tomorrow? Doesn't the yapc start on 20?
18:14 jnthn pmichaud: safe travels
18:14 pmichaud felher: there's another meeting taking place just before yapc::eu
18:14 felher pmichaud: ah, i see. So have fun and safe travels :)
18:17 moritz jnthn: I've tried http://moritz.faui2k3.org/tmp/t​ype-constraint-sigilless.patch to make   my Str \x = 42;  die, but the type constraints don't seem to do anything. Any idea why?
18:17 moritz I don't really understand the codegen, I've just copied&pasted it together
18:22 jnthn The descriptor thing seems redundant since there's no container.
18:23 jnthn moritz: Oh...
18:23 jnthn make QAST::Op.new(
18:23 jnthn :op<bind>,
18:23 jnthn QAST::Var.new(:$name, :scope<lexical>),
18:23 diakopter sorear: do you have all the unicode properties in unidata?
18:23 jnthn The type check probably needs to happen there
18:24 moritz jnthn: is there a "bind and typecheck" op or so?
18:24 jnthn moritz: p6bindassert
18:24 jnthn moritz: You wrap it around the RHS
18:24 moritz jnthn: so using that instead of bind should fix it?
18:24 moritz oh
18:24 moritz ok
18:25 * jnthn takes a short walk before doing some more on his YAPC slide
18:25 jnthn er, slide*s*.
18:25 jnthn They are at least plural already :)
18:27 raiph what if...
18:27 raiph if a switch was enabled...
18:27 maja joined #perl6
18:28 raiph exception messages included a link to a corresponding wiki.perl6.org/X/ page...
18:28 raiph and X pages, if blank, contained some default page...
18:28 raiph that included some preloaded search URLs...
18:29 moritz raiph: why wiki.perl6.org and not doc.perl6.org?
18:29 * masak was thinking the same thing
18:29 moritz raiph: http://doc.perl6.org/type/X::Syntax::NegatedPair
18:29 moritz example
18:29 raiph to stackoverflow and google etc... for "p6" + that particular exception
18:30 moritz and if they don't exist, they need to be written
18:30 moritz patches very welcome :-)
18:31 raiph (patches very welcome) knew that would be coming... :-)
18:32 raiph moritz: link to d.p6.o would be better, and then have the default on that contain links to the wiki, so, google.
18:32 moritz raiph: no default page. It should be complete. Period.
18:33 moritz it's not too much work to document an exception class
19:00 _ilbot joined #perl6
19:00 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: http://irc.perl6.org/ | UTF-8 is our friend!
19:00 renormalist joined #perl6
19:02 dalek doc: f985981 | moritz++ | lib/X/ (5 files):
19:02 dalek doc: document some IO errors
19:02 dalek doc: review: https://github.com/perl6/doc/commit/f985981fbb
19:07 BrowserUk joined #perl6
19:08 BrowserUk left #perl6
19:10 BrowserUk joined #perl6
19:11 BrowserUk left #perl6
19:35 lichtkind joined #perl6
19:35 dalek doc: ff783b8 | moritz++ | lib/X/IO/ (3 files):
19:35 dalek doc: document three more IO error classes
19:35 dalek doc: review: https://github.com/perl6/doc/commit/ff783b8688
19:35 BinGOs joined #perl6
19:35 sorear diakopter: not sure about 'all'
19:36 diakopter do you have an idea how long it takes to load unidata?
19:38 diakopter or does it lazily load portions
19:39 sorear it lazily loads portions
19:40 sorear it's fast enough
19:40 dalek doc: 39b51b1 | moritz++ | lib/operators.pod:
19:40 dalek doc: [operators] infix orelse
19:40 dalek doc: review: https://github.com/perl6/doc/commit/39b51b1b4f
19:41 Khisanth joined #perl6
19:45 dalek doc: cbcc0dd | moritz++ | type-graph.txt:
19:45 dalek doc: [type-graph.txt] remove Seq. It is probably gone for good.
19:45 dalek doc: review: https://github.com/perl6/doc/commit/cbcc0dd5ef
19:47 sorear diakopter: I think it includes all of the 6.1 facets anyway
19:48 * jnthn back
19:48 sorear jnthn! o/
19:49 jnthn o/ sorear
19:49 thou joined #perl6
19:49 * sorear is sitting in the post security area at SAN...
19:50 birdwindupbird joined #perl6
19:50 jnthn ooh :)
19:50 * masak waves to sorear
19:50 HarryS joined #perl6
19:50 sorear first time ever in an airport btw
19:51 moritz and already alone and crossing the big pond?
19:51 sorear Sometimes you just gotta jump in the deep end
19:52 masak sorear++
19:55 nodmonkey joined #perl6
19:55 jnthn If you're post-security, you already survived the worst part ;)
19:55 au sorear++ # bon voyage
19:56 huf nah, the worst part is being cold and stiff and uncomfortable for ~10 hours...
19:56 DreamingInCode joined #perl6
19:56 moritz sorear: good flight, good fight
19:56 huf but i'm sure it'll be lots of fun this time :)
19:56 diakopter hopefully someone recommended not to wear shorts
19:57 moritz indeed. Air conditions exists. In planes.
19:57 * jnthn has found planes too warm far more often than too cold
19:58 jnthn otoh, I'm weird with temperature ;)
19:58 * moritz just noticed that htmlify.pl will ahve trouble writing //.html for the infix // operator
19:59 huf jnthn: eh, i'm almost always cold, especially if i sit still for a bit
19:59 huf no surprise that one of my chief complaints with planes is the cold :)
19:59 jnthn Ah...that'd explain it.
20:00 masak moritz: certainly a bunch of things need URL escaping, no?
20:00 moritz masak: surprisingly little
20:00 Khisanth joined #perl6
20:01 moritz I'm slowly starting to feel the limits of statically generated files
20:02 sorear SAN-- # blocking outbound SMTP
20:02 colomon sorear++
20:02 colomon sorear: have a safe flight!
20:02 sorear thanks!
20:02 arnsholt sorear: Good luck with the travelling!
20:03 arnsholt Wish I could be there to say hello in .de
20:03 sorear .lu?
20:04 arnsholt Oh, thought you were going to YAPC::EU, sorry =)
20:04 sorear That too
20:04 sorear my airport of arrival is LUX
20:05 arnsholt Ah, right
20:05 arnsholt Maybe I'll have to come to Austin next year instead =)
20:05 ObseLeTe joined #perl6
20:05 cognominal joined #perl6
20:05 mhasch bon voyage, sorear
20:17 sorear arnsholt: dunno if I want to risk a visit to .tx
20:18 sorear :)
20:22 dalek doc: 03a13a1 | moritz++ | / (2 files):
20:22 dalek doc: add operators to search
20:22 dalek doc: review: https://github.com/perl6/doc/commit/03a13a1918
20:22 moritz japhb: that commit ^^ didn't quite work, the search doesn't like URL fragments. Can you do anything about it?
20:22 * moritz -> sleep
20:23 arnsholt sorear: There is that, but I've been told Austin is pretty safe =)
20:24 arnsholt A visiting professor said something like that it's a pale blue dot in a sea of red =)
20:25 sorear hahahahahaha
20:33 topo joined #perl6
20:38 PerlJam yep, that sounds like austin.
20:38 sorear o/ PerlJam
20:38 PerlJam I'm going to have to find a way to move back to Austin one of these days (or at least out of the technological wasteland of Corpus Christi)
20:39 leprevost joined #perl6
20:39 dalek perl6-roast-data: c3f2e7e | coke++ | / (4 files):
20:39 dalek perl6-roast-data: today
20:39 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/c3f2e7e9ef
20:39 dalek perl6-roast-data: 26a8a85 | coke++ | / (4 files):
20:39 dalek perl6-roast-data: today
20:39 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/26a8a852a0
20:40 PerlJam sorear: greetings.  Have fun in EU
20:40 [Coke] rakudo dropped below 23000 tests today: https://github.com/coke/perl6-roast​-data/blob/26a8a852a0c73dcdfd54a512​d7e5304d8961063c/rakudo_summary.out
20:40 PerlJam sorear: Are you attending the p5mop thing too?
20:40 sorear no
20:41 [Coke] and it's probably my fault. bother.
20:41 _nay_ joined #perl6
20:43 [Coke] r: say tc("eek");
20:43 p6eval rakudo dc19a7: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&tc' called (line 1)␤»
20:44 DreamingInCode left #perl6
20:45 [Coke] r: say ucfirst("eek");
20:45 p6eval rakudo dc19a7: OUTPUT«Eek␤»
20:45 [Coke] ah. just needs to be todo'd, then.
20:52 [Coke] Does someone have the voodoo written down to convert a readonly github checkout to a pushable one?
20:52 diakopter check it out in another dir and replace the .git ?
20:52 diakopter then recommit everything as one big one :)
20:53 diakopter I dunno; I've never tried it
20:54 PerlJam [Coke]: Just edit .git/config and change the URL
20:54 diakopter there, a real answer :D
20:55 hoelzro ahoy Perl6 folk
20:56 PerlJam [Coke]: or, if you prefer command line utils, you'd do  "git config remote.origin.url git@github.com:path/here.git"
20:56 masak hoello, hoelzro! :)
20:56 PerlJam (from within the repo)
20:56 PerlJam (also, assuming that you called the remote "origin")
20:56 * jnthn normally edits .git/config
20:56 tadzik same
20:57 PerlJam yeah, me too :)
20:57 hoelzro so, I have a rakudo dev env set up =)
20:57 tadzik and now github defaults to https with its info when you crete a repo
20:57 sorear o/ hoelzro
20:57 tadzik I always copypaste the 'git remote add origin'part
20:57 jnthn hoelzro: Nice :)
20:57 hoelzro any recommended reading before I get to work? =)
20:57 hoelzro I'm trying to fix the qualified method call bug I found the other day
20:58 tadzik read "Million Little Pieces", it's an awesome book
20:58 jnthn hoelzro: What's the bug, ooc? I may be able to hint where to look.
20:59 hoelzro S12-methods/qualified.t
20:59 hoelzro when calling a qualified method of a role, self is not preserved
20:59 hoelzro I've found the parser action that handles method calls
20:59 hoelzro but I'm trying to find the code that walks the AST =/
21:00 jnthn hoelzro: As in, compiles the AST down to PIR?
21:00 hoelzro yes
21:00 hoelzro ...I think.
21:01 jnthn hoelzro: That lives in src/QAST/ in the NQP repo, but it won't be where the problem is
21:01 jnthn I guess you mean .+, .* etc?
21:01 jnthn oh, wait
21:01 jnthn qualified, not quantified
21:01 dalek rakudo/nom: 30134cf | coke++ | t/fudgeandrun:
21:01 dalek rakudo/nom: add t/fudgeandrun from niecza++
21:01 dalek rakudo/nom:
21:01 dalek rakudo/nom: simplifies testing of individual roast files.
21:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/30134cf780
21:01 hoelzro jnthn: right
21:01 jnthn So $obj.Foo::Bar::meth()
21:02 hoelzro like self.Role::method()
21:02 hoelzro exacly
21:02 jnthn Yeah
21:02 [Coke] editing .git/config is probably the easiest thing. Danke.
21:02 jnthn Those are desugared to a call to dispatch:<::> which you'll find in src/core/Mu.pm
21:02 dalek roast: 8ccf840 | coke++ | S10-packages/basic.t:
21:02 dalek roast: rakudo hasn't caught up with tc/ucfirst yet.
21:02 dalek roast: review: https://github.com/perl6/roast/commit/8ccf84028d
21:03 hoelzro ah, thank you
21:03 japhb_ joined #perl6
21:04 japhb_ Coke, out of curiosity, what does fudgeandrun do that 'make test-file-name' did not?
21:07 hoelzro if I want to debug this, how can I assign the result of nqp::findmethod to a variable?
21:07 hoelzro Rakudo doesn't seem to like that.
21:08 jeffreykegler joined #perl6
21:08 jnthn "doesn't like"?
21:08 jnthn Try binding though
21:08 hoelzro ok
21:08 _nay_ joined #perl6
21:10 [Coke] 1) it's the same as on both the other major implementations, 2), it lets you leave off the t/spec ... other than that, I don't think anything.
21:11 hoelzro that did it
21:16 sorear n: say "00" eqv "0"
21:16 p6eval niecza v19-21-gc86e8e5: OUTPUT«False␤»
21:17 japhb_ [Coke], thanks
21:21 hoelzro where does the "call" method of Sub get implemented?
21:23 jnthn hoelzro: That's a VM level thing
21:23 jnthn hoelzro: I'm wondering if the problem is something to do with role punning...
21:23 hoelzro hmm
21:24 hoelzro jnthn: someone mentioned the "pun" term earlier
21:24 hoelzro I didn't understand what they meant
21:24 jnthn You can't invoke a method on a role directly
21:25 jnthn Doing so forces it to be "punned" into a class
21:25 jnthn The method is then call on that
21:25 jnthn RolePunning.pm implements it
21:26 jnthn Most method dispatches hit the method cache; ones involving punning roles go through the find_method in there.
21:29 hoelzro hmm
21:29 hoelzro is there a way to say "hey, use this object as your self"?
21:29 hoelzro instead of creating a dummy objct?
21:31 masak how do you mean?
21:31 jnthn Hmm
21:31 jnthn -> $inv, *@pos, *%named {
21:31 jnthn $!pun."$name"(|@pos, |%named)
21:31 jnthn }
21:31 jnthn Yeah, it discards $inv always
21:31 masak r: class A is Int { method foo { say self } }; my &method = A.^find_method('foo'); &method(42)
21:31 p6eval rakudo 30134c: OUTPUT«Nominal type check failed for parameter ''; expected A but got Int instead␤  in method foo at /tmp/97WcaU9Nu4:1␤  in block  at /tmp/97WcaU9Nu4:1␤␤»
21:31 masak oh, right.
21:32 jnthn masak: We're looking at $obj.Role::method()
21:32 masak ok.
21:33 jnthn I wonder what the fallout is if we change the above to
21:33 jnthn nqp::findmethod($!pun, $name)($inv, |@pos, |%named)
21:33 jnthn Oh, probably something bad.
21:35 jnthn yeah, it'll screw up the general case
21:35 jnthn Even if it probably fixes this particular one
21:35 jnthn maybe
21:36 jnthn $inv.WHAT =:= $obj.WHAT
21:36 jnthn ?? $!pun."$name"(|@pos, |%named)
21:36 jnthn !! nqp::findmethod($!pun, $name)($inv, |@pos, |%named);
21:36 jnthn Would nail it
21:36 jnthn (inside the pointy)
21:37 jnthn That is, if we're actually invoking the method on the role itself, we really need to invoke it on the pun, but if on a real instance then pass that along.
21:39 hoelzro well, keep thinking about it =)  I need to go to bed soon, but I'm happy to try and fix this, since I found the bug!
21:39 hoelzro night perl6 folk
21:40 jnthn 'night, hoelzro++
21:58 tadzik oh hahaha, I just had an idea, and shame that I didn't get it earlier
21:59 tadzik we should've all packed tuxedos for YAPC::EU and have taken a picture showing how well we, geeks dress
21:59 tadzik or maybe that'll just make us look like business people
22:01 masak tadzik: not sure what that would show apart from "look! we have tuxedos!" ;)
22:01 tadzik that'd be AWESOME
22:01 tadzik imagine the pre-conference beer or so
22:01 tadzik like a flash mob
22:07 * masak .oO( revenge is best served dressed in a tuxedo... like a waiter, serving things )
22:08 tadzik ehehehe
22:21 tokuhiro_ joined #perl6
22:30 cognominal joined #perl6
22:34 japhb_ Is there a "rebuild all" in panda yet?
22:34 tadzik nah :/
22:35 tadzik you mean to use it after a rakudo rebuild?
22:35 japhb_ What is preventing such functionality?
22:35 japhb_ tadzik, yup
22:35 tadzik that'd be hard, for you need to rebuild panda itself as well
22:35 japhb_ I end up doing a Parrot/NQP/Rakudo full rebuild 2-5x a week
22:35 tadzik so, unluckily, the easiest way is to rm -rf ~/.perl6 ~/.panda and rebootstrap it
22:35 tadzik moritz++ has written a shellscript for it, iirc
22:36 jnthn Doesn't that lose the modules you had installed though?
22:36 tadzik it does
22:36 tadzik hm, that could be worked around though
22:36 jnthn Could a solution along the lines of the bootstrap script work?
22:36 tadzik cut -f 1 ~/.panda/state | xargs panda install
22:37 tadzik that should work :)
22:37 tadzik yep, should
22:37 japhb_ jnthn: +1 to that idea, I was going to suggest the same.
22:37 tadzik bootstrap.pl could handle the rebootstrap case as well, maybe
22:37 tadzik so you could omit the rm -rf part
22:37 tadzik and there's still the windows issue
22:38 japhb_ Seems more than reasonable to me
22:38 japhb_ What's the windows issue again?
22:39 jnthn "Panda doesn't work on Windows"
22:39 japhb_ Yeah, I was afraid the answer was "total failure"
22:39 tadzik jnthn++ exactly
22:39 tadzik that need serious fixing
22:40 tadzik that needs me setting up Rakudo on windows and keeping to care about it
22:40 tadzik and there's code smell all around too
22:40 japhb_ :-(
22:40 tadzik and I stopped doing redesigns because it worked worse and worse on windows
22:40 jnthn Yeah. Let's try and have our planned YAPC hacking to see if we can make something better happen there.
22:41 tadzik vicious circle
22:41 tadzik yeah
22:41 japhb_ Well, one battle at a time.  YAPC hacking for Windows fixes -- can the rebootstrap case be handled before that?
22:42 tadzik I have reisefieber anyway, so I may as well do it now
22:42 japhb_ ++tadzik  # W00t
22:42 tadzik :)
22:42 tadzik tea is there, I can't pack my backpack because the clothes are still drying ;)
22:42 tadzik I'll concentrate on making it work the best I can on Linuxes now
22:43 japhb_ :-)
22:43 tadzik japhb_: could you see if offline-bootstrap works on your box?
22:44 japhb_ Sure.  Just nuke .perl6 and .panda and then run what?  How do you force offline-bootstrap?
22:44 japhb_ .oO( Unplug the net cable )
22:44 siff joined #perl6
22:45 tadzik git checkout offline-bootstrap
22:45 tadzik perl6 bootstrap.pl
22:45 felher tadzik++
22:45 japhb_ Ah, a branch, got it
22:45 tadzik I've been hacking Go the entire day, time for some insanity now :P
22:45 japhb_ (For some reason I thought it had been merged)
22:48 japhb_ Hmmm, I've got some personal stuff in ~/.perl6 .  Is it enough to nuke ~/.perl6/lib and ~/.perl6/bin/{panda,ufobuilder} ?
22:49 japhb_ Actually, I'll just save the other stuff off
22:50 tadzik japhb_: should be ok
22:50 tadzik ufobuilder should be long gone too
22:51 japhb_ When I did manual rebuilds in the past, I only bothered to nuke .pir files, so it had probably remained there for quite some time.
22:53 tadzik japhb_: personal stuff is a good point, I'll make rebootstrap nuke only /lib
22:54 japhb_ Seems to have installed and be working quite well using offline-bootstrap
22:55 tadzik great
22:55 tadzik I'm now testing rebootstrap.pl
22:55 tadzik I'll merge offline-bootstrap too
22:56 tadzik jnthn: any guess how would rakudo react if I deleted the script being run during execution? :)
22:56 japhb_ ufobuilder is indeed gone, btw
22:56 tadzik good
22:58 tadzik seems it survives
22:58 jnthn tadzik: Think it slurps up the file then closes it.
22:58 * japhb_ wonders whether nuking ~/.panda/src/ should be optional (and off by default?), because most of the git checkouts shouldn't be corrupted, but would chew bandwidth to reclone completely
22:58 jnthn Especially when git clean
22:58 tadzik japhb_: keeping git repos in src/ has proved to be more problematic than beneficial
22:59 japhb_ Ah, what are you doing now?
22:59 tadzik see also: people leaving leftover stuff in repos and git pull getting confused
22:59 tadzik it still does this, thoug
22:59 tadzik there are more important problems than this :)
22:59 japhb_ People mess around in ~/.panda/src/?  That's ... an odd choice
22:59 japhb_ oh, no argument
22:59 jnthn People *are* odd. ;)
22:59 tadzik well
22:59 tadzik oh, look this way
22:59 jnthn (Yes, yes, I'm people too, and all that... :))
23:00 tadzik stuff in src doesn't have to come from git
23:00 tadzik consider panda install ./Local/Module
23:00 japhb_ I take it that copies the local source into ~/.panda/src/?
23:01 tadzik yes
23:01 japhb_ gotcha
23:02 dalek panda: b475cb2 | tadzik++ | / (38 files):
23:02 dalek panda: First shot at offline bootstraping; seems to work
23:02 dalek panda: review: https://github.com/tadzik/panda/commit/b475cb267a
23:02 dalek panda: 22a494d | tadzik++ | b (2 files):
23:02 dalek panda: Ensure that DESTDIR is respected
23:02 dalek panda: review: https://github.com/tadzik/panda/commit/22a494ddf1
23:02 dalek panda: 9f3691d | tadzik++ | projects.json.bootstrap:
23:02 dalek panda: Oops, forgot the most important part
23:02 dalek panda: review: https://github.com/tadzik/panda/commit/9f3691d32f
23:02 dalek panda: 0de8b12 | tadzik++ | bin/panda:
23:02 dalek panda: Fix installing into the default location
23:02 dalek panda: review: https://github.com/tadzik/panda/commit/0de8b1253d
23:07 ObseLeTe joined #perl6
23:08 japhb_ tadzik, had you intended to use the 'run' sub in panda-rebootstrap?  It is NYI in Rakudo, according to src/core/control.pm ...
23:08 tadzik huh, isn't that shell()? :)
23:08 tadzik huh, what are those commits above
23:09 japhb_ sub run(*@) {
23:09 japhb_ die 'run() is not yet implemented, please use shell() for now';
23:09 japhb_ }
23:09 tadzik it's like offline-bootstrap semi-merged, wtf
23:09 japhb_ Yes, that is ... fishy
23:09 dalek panda: c77524e | tadzik++ | / (38 files):
23:09 dalek panda: First shot at offline bootstraping; seems to work
23:09 dalek panda: review: https://github.com/tadzik/panda/commit/c77524ec13
23:09 dalek panda: c37cd2c | tadzik++ | b (2 files):
23:09 dalek panda: Ensure that DESTDIR is respected
23:10 dalek joined #perl6
23:10 tadzik japhb_: can you try the new master?
23:10 tadzik it installs panda-rebootstrap, which should work
23:10 japhb_ sure.  How far do you want me to scrub things?
23:10 tadzik try to break it :)
23:10 japhb_ Heh, OK
23:10 tadzik thanks
23:12 tadzik are you coming to YAPC, japhb_?
23:12 japhb_ *sigh* No, I wish.
23:13 * japhb_ has not been to a Perl conference that was more than 3 hours driving time from either his $day_job or a family member's house.
23:14 diakopter afraid of bedbugs at hotels?
23:14 japhb_ afk for just a bit, $day_job
23:14 [Coke] $$ and time off, for me.
23:17 tadzik oh, this bin/panda-rebootstrap is not gonna work
23:17 tadzik dang
23:20 japhb_ bak
23:20 japhb_ I have the same problem as [Coke].
23:21 japhb_ tadzik, What's the problem?
23:21 dalek panda: 29c237f | tadzik++ | rebootstrap.pl:
23:21 dalek panda: Remove rebootstrap from bin/, it has no chance to work this way
23:21 dalek panda: review: https://github.com/tadzik/panda/commit/29c237f083
23:21 tadzik japhb_: it's using {cwd}/dependencies :)
23:21 tadzik so it has to be ran from the panda source dir
23:21 japhb_ Oh.  Right.  Well, I was about to test that anyway, so I guess now I know the answer to that test.  :-)
23:22 dalek panda: 39080b4 | tadzik++ | bin/panda-rebootstrap:
23:22 dalek panda: Fix that last commit
23:22 dalek panda: review: https://github.com/tadzik/panda/commit/39080b4eca
23:22 japhb_ tadzik, ready for me to pull and try again?
23:22 tadzik sure
23:25 tadzik I guess doc/ thing comes next
23:26 japhb_ Installing doc files, you mean?
23:26 tadzik yeah
23:26 jnthn 'night o/
23:26 tadzik g'night jnthn
23:26 tadzik see you soon :)
23:27 japhb_ jnthn, In your Expert Opinion (tm), how much faster do you think Rakudo's startup time can become while remaining on the Parrot VM?
23:27 japhb_ Oh damn.
23:27 sergot good night ! o/
23:27 japhb_ Slow typing kills me again
23:28 jnthn japhb_: Well, there's about 20% win from last time I profiled in fixing stuff so we don't have to decode the serialization stuff from base64...
23:28 japhb_ hmm
23:28 jnthn japhb_: We lost a bit on what feels like startup time a while ago also.
23:29 japhb_ "lost a bit", as in got better or worse?
23:29 jnthn Got worse
23:29 jnthn It's parsing related
23:29 japhb_ ah
23:29 jnthn We build some rather complex NFAs "on demand"
23:30 japhb_ Oh, gotcha.
23:30 jnthn That's happened since we moved to the new regex engine. It's much corrector in terms of semantics.
23:30 jnthn We almsot certainly can compute 'em at compile time and cache them.
23:30 jnthn afaik, it needs little more than tuits. Just didn't get around to it yet
23:30 japhb_ nodnod
23:30 jnthn I did have it naively in place ones.
23:31 jnthn *noce
23:31 jnthn no
23:31 jnthn ONCE
23:31 japhb_ heh
23:31 japhb_ .oO( Fast typing kills him again )
23:31 jnthn Sadly, it broke the nqp bootstrap by creating coupling between stages.
23:31 * japhb_ nods sagely
23:32 jnthn At which point I backed it out and put it on my "list of things I know can be solved at some point without a huge amount of effort"
23:32 jnthn The much tougher cookie is trying to limit recalculation in the face of grammar derivations.
23:32 japhb_ I can easily see that.
23:32 jnthn tadzik: yes, see you soon :)
23:33 jnthn I didn't really invest much thought in it just yet.
23:33 jnthn Maybe it ain't excessively terrifying. :)
23:33 jnthn Guess if you compute dependency chains as you calculate the NFAs or something...
23:33 japhb_ tadzik, FWIW rebootstrap.pl seems to be working well, tried a couple simple cases (with and without extra modules to build), worked like a charm both times
23:33 tadzik great :)
23:33 jnthn OK, really rest o/
23:34 tadzik I'm trying to fixup pod-installing now
23:34 japhb_ gnight!
23:34 tadzik good knight japhb_
23:34 tadzik er
23:34 tadzik good knight jnthn
23:34 japhb_ excellent, thank you tadzik++
23:37 skids joined #perl6
23:41 benabik joined #perl6
23:41 * TimToady is here at seatac for the next half hour or so
23:45 diakopter seatac to europe? or another connection?
23:45 tadzik huh, Pod::To::Text doesn't get precompiled?
23:47 TimToady to amsterdam first
23:48 diakopter cool... over the ice cap or something
23:48 TimToady iirc, only $foo or $() on the left will trigger item assignment precedence
23:48 TimToady well, $foo::bar too
23:50 tadzik oh yes, this is a good panda hacking day
23:51 japhb_ tadzik++ # good panda hacking day
23:51 tadzik japhb_: I'm able to install p6doc locally :)
23:51 japhb_ w00t
23:51 tadzik which requires patches to rakudo and p6doc, but not for panda :P
23:52 japhb_ Interesting
23:52 tadzik which worries me, because the last thing I remember about pod-installing branch was "omg wtf WHYYYY"
23:52 tadzik but it seems to work now
23:56 dalek rakudo/nom: efde6e5 | tadzik++ | tools/build/Makefile.in:
23:56 dalek rakudo/nom: Don't forget to install precompiled Pod::To::Text
23:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/efde6e57bb

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

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs