Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-04-22

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:01 dorlamm joined #perl6
00:09 betterworld joined #perl6
00:25 franek joined #perl6
00:39 OS7943 joined #perl6
00:43 pmichaud blogpost: http://pmthium.com/2012/04/22/oslo-​perl-6-patterns-hackathon-days-1-2/
00:43 pmichaud sleep time -- bbl
00:48 fgomez joined #perl6
00:48 fgomez joined #perl6
00:59 simcop2387 joined #perl6
01:13 nif joined #perl6
01:15 lichtkind_ joined #perl6
01:31 wolfman2000 joined #perl6
01:47 nif joined #perl6
01:47 * colomon is very frustrated that ABC works fine under Niecza and two months old Rakudo, but not under current Rakudo.  :(
01:47 colomon inscrutable error message, too.
01:53 sorear I think Perl 6 is naturally disposed to inscrutable error messages </pessimism>
01:54 sorear hmm.
01:54 sorear why is this?
01:55 sorear the first explanation that comes to mind is that the errors are written from the POV of an implementor and haven't had time yet to be reexpressed in userese
01:56 colomon In this case, the concept of the error seems clear enough.  I just can't see how it applies to my code, particularly since that code works fine under Niecza.
01:56 sorear the hopeless case would be one where many user-level errors are caught at the same point
01:56 sorear What is the error?
01:57 colomon Missing block
01:57 colomon at lib/ABC/BrokenRhythm.pm:30
01:57 colomon sub new-rhythm($note, $ticks) {
01:57 colomon given $note {
01:57 colomon when ABC::Note { ABC::Note.new($note.pitch, ABC::Duration.new(:$ticks), $note.is-tie); }
01:57 colomon when ABC::Stem { ABC::Stem.new($note.notes.map({ new-rhythm($_, $ticks); })); } # line 30
01:57 colomon }
01:57 colomon }
01:58 sorear std: when ABC::Note { ... }
01:58 p6eval std 3d13d53: OUTPUT«[31m===[0mSORRY![31m===[0m�Function 'ABC::Note' needs parens to avoid gobbling block at /tmp/ELxvtUTFk6 line 1:�------> [32mwhen ABC::Note[33m�[31m { ... }[0m�Missing block (apparently gobbled by 'ABC::Note') at /tmp/ELxvtUTFk6 line 1:�------> [32mwhen ABC::…
01:58 sorear rakudo: when fooo { ... }
01:58 p6eval rakudo 5d7626: OUTPUT«===SORRY!===␤Missing block␤at /tmp/s5QLdLOimU:1␤»
01:58 sorear looks like rakudo just needs $*BORG
01:59 colomon r: when Str { ... }
01:59 p6eval rakudo 5d7626:  ( no output )
01:59 sorear rakudo somehow isn't seeing the predecl for ABC::Note, so it interprets it as a function call
02:00 sorear I'm suprised; predecl of class symbols is one of niecza's biggest problem points
02:00 colomon it's not even a predecl, I've got use ABC::Note at the top of the file
02:00 sorear part of the reason I changed all the classes in the compiler to $-vars
02:00 nif joined #perl6
02:01 * colomon now feels it was very wise to get ABC working on Niecza before updating his Rakudo.
02:02 sorear the best thing about rakudo's weird install system is that it makes downgrades easy
02:03 colomon true.  :)
02:10 tokuhirom joined #perl6
02:12 colomon It doesn't seem like the -I command line argument is working correctly, either?
02:15 colomon Math::Prime doesn't work under new Rakudo, either.
02:16 sorear heh, you actually have a BrokenRhythm.pm
02:16 sorear I was thinking "it's a non-working version of Rhythm.pm"
02:17 colomon no, it's for broken rhythms, like a dotted-eighth / sixteenth pair.  :)
02:18 sorear .oO( There's your problem!  Your rhythm is broken! )
02:19 ens i
02:19 ens love
02:19 ens perl
02:19 ens to a degree that, if it wern't for the fact that i have a full time job working with it, would probably be considered unhealthy.
02:21 sorear That is a strange thing to say
02:21 fgomez joined #perl6
02:21 sorear Is that supposed to be a thank-you note?
02:21 sorear An affirmation of piety?
02:21 sorear Something else?
02:22 colomon enthusiasm, I think.
02:22 ens joined #perl6
02:23 ens thanks for all the good work. anyone who is actively working on perl6 has great respect from me.
02:24 ens (i've followed the dev mailing list for a few years now but it's out of my league)
02:24 ens we're on the brink of doing a re-code of all our company products, but they are looking to continue using perl5
02:25 ens is it possible we can use perl6 instead? i'm sure it is, but does it have the same sort of reliability as perl5 has?
02:25 colomon not yet
02:26 ens shame, would have been good to get some real life working perl6 stuff installed in some businesses out there.
02:26 colomon r: sub foo(*@a) { [*] @a; }; say 1, 2, &foo ... * > 100;
02:26 p6eval rakudo 5d7626: OUTPUT«1 2 2 4 16 256␤»
02:27 timotimo huh?
02:27 timotimo foo gets passed the complete list so far?
02:28 colomon ens: I'm actually using perl6 for some real life stuff, but if you scroll back in the discussion just a bit you'll see me complaining that the latest changes in the compiler have apparently broken my working.  It's just not as stable as perl 5 yet.
02:28 colomon timotimo: yes
02:29 timotimo .o(also not as fast by far if you use rakudo)
02:29 ens ah the new switch case stuff
02:30 timotimo the given keyword?
02:30 ens i'm quite surprised that wasn't in perl5 tbh.
02:30 ens yeah
02:34 colomon given / when is so fun to use in perl 6.  :)
02:37 tyatpi joined #perl6
02:38 colomon current rakudo is totally blowing the core algorithm for Math::Prime, too.  :(
02:43 sorear where can I find Math::Prime?  what does it do?
02:53 orafu joined #perl6
03:04 nif joined #perl6
03:15 colomon sorear: sorry, wasn't keeping an eye on #perl6
03:15 colomon https://github.com/colomon/Math-Prime
03:16 colomon it gives you an infinite list of primes (named "primes") and an is-prime sub.
03:16 colomon it's not terribly sophisticated
03:16 colomon it works fine in Niecza.
03:21 colomon afk # sleep
04:21 dalek features: 80c04aa | (John Gabriele)++ | template.html:
04:21 dalek features: Make it a little easier for the eye to follow the first column.
04:21 dalek features: review: https://github.com/perl6/f​eatures/commit/80c04aa4ba
04:25 xinming joined #perl6
04:29 ens colomon: can i pop the infinite list of primes?
04:38 JuanDaugherty joined #perl6
04:44 JuanDaugherty left #perl6
04:44 sorear ens: 20:21 < colomon> afk # sleep
04:44 sorear ens: that means "I am no longer available (I am sleeping)"
04:44 dalek tablets: d267a15 | (Siddhant Saraf)++ | docs/appendix-d-delta.txt:
04:44 dalek tablets: fix link to appendix-c
04:44 dalek tablets: review: https://github.com/perl6/tablets/commit/d267a15a6d
04:44 sivoais joined #perl6
04:45 sorear ens: anyways, you can't pop infinite lists.  (Popping a list removes an element from the end, and infinite lists have no end.)
04:48 kaare_ joined #perl6
04:53 fgomez joined #perl6
04:56 dalek tablets: 8a9b154 | (Siddhant Saraf)++ | docs/tablet-1-language-design.txt:
04:56 dalek tablets: [docs / tablet-1-language-design.txt] fix link to appendix-d-delta
04:56 dalek tablets: review: https://github.com/perl6/tablets/commit/8a9b1541a4
04:58 fgomez joined #perl6
04:58 dalek tablets: 71e6116 | (Siddhant Saraf)++ | docs/tablet-1-language-design.txt:
04:58 dalek tablets: [tablet-1-language-design.txt] fix link to tablet-0-history
04:58 dalek tablets: review: https://github.com/perl6/tablets/commit/71e61163f1
04:58 kmwallio joined #perl6
05:00 sisar joined #perl6
05:33 xyklex joined #perl6
05:41 odoacre joined #perl6
05:51 mucker joined #perl6
05:52 sudokode joined #perl6
05:56 fglock joined #perl6
05:56 xyklex left #perl6
06:13 bacek joined #perl6
06:15 vlixes left #perl6
06:16 bacek joined #perl6
06:31 GlitchMr joined #perl6
06:31 sisar https://gist.github.com/2462010 <--- why is modifying an array using pop possible? ain't @z just a read-only alias to @x?
06:35 sisar neither niecza nor rakudo complain at the pop statement
06:36 sorear no such thing as read-only arrays in any current impl
06:37 fgomez joined #perl6
06:38 sisar oh, so it is supposed to complain but NYI, right ?
06:39 sorear looking at the actual gist - I am not sure
06:39 sorear @z is an *object*
06:40 sorear objects are passed by reference, not by magical reference-adorned-with-a-const-flag
06:40 sisar huh ?
06:40 sorear this isn't C++
06:40 sorear we probably don't have const correctness
06:40 sisar hmm
06:43 birdwindupbird joined #perl6
06:50 magichat joined #perl6
06:55 magichat left #perl6
07:33 cggoebel joined #perl6
07:37 harukomoto joined #perl6
08:12 JimmyZ joined #perl6
08:13 moritz \o
08:14 JimmyZ nom: my @x = 2, 3, 4; sub foo(@z is readonly ) { @z = 5,6 ; return @z;}; say foo(@x);
08:14 p6eval rakudo 5d7626: OUTPUT«5 6␤»
08:16 bjarneh joined #perl6
08:19 masak morgen, #perl6
08:19 pmichaud good morning, #perl6
08:19 tadzik good morning
08:20 JimmyZ nom: my @x = 2, 3, 4; sub foo(@z is readonly ) { say @z = 6,7; return @z;}; say foo(@x);
08:20 p6eval rakudo 5d7626: OUTPUT«6 7␤6 7␤»
08:20 JimmyZ moring, it is allowed ?
08:20 jnthn Another day of hackathon \o/
08:20 JimmyZ *morning
08:20 jnthn JimmyZ: No, the morning is totally forbidden
08:20 fglock phenny: tell japhb I've implemented "next"; perl 0.4s; p5-in-js 1.5s (I think I can see gc pauses)
08:20 phenny fglock: I'll pass that on when japhb is around.
08:21 JimmyZ I meant the code outputs ...
08:21 pmichaud "read only" aspects of objects is still somewhat speculative
08:22 moritz sqlite3_stmt **ppStmt
08:25 fglock perlito5.js can now execute https://github.com/japhb/perl6-benc​h/blob/master/perl5/rc-forest-fire :)
08:25 pmichaud JimmyZ: there's a very long thread about "is readonly" from last summer:
08:25 pmichaud http://www.nntp.perl.org/group/perl.​perl6.language/2011/08/msg34627.html
08:25 JimmyZ wow
08:26 sorear "readonly" can only be guaranteed to work for scalar variables.  Anything else seems to cause more problems than it solves...
08:27 sorear masak: Originally, niecza returned the count of substitutions from s///, but then I learned that if $str ~~ s/// { } was being treated as $str eq "2", etc which is Obviously Wrong
08:27 masak pmichaud++ # http://pmthium.com/2012/04/22/oslo-​perl-6-patterns-hackathon-days-1-2/
08:27 JimmyZ I'm curious why 'is readonly' is the default, not ''is copy'
08:28 masak sorear: oh!
08:28 masak sorear: yeah, I seemed to recall it was something like that, but couldn't recall the details.
08:28 sorear JimmyZ: the stated rationale is to give implementations more freedom on copying values
08:28 masak sorear: thing is, when I look at '$str ~~ s///', it looks so obvious that it should return something truthy iff it matched.
08:28 JimmyZ hmm... I  think I know ..
08:29 masak pmichaud: ss/from within a <(problem)>/program/
08:30 pmichaud thanks.... fixing
08:30 pmichaud .... I read $str ~~ s///   as indeed being a match against whatever s/// returns.... what else would it be?
08:30 pmichaud similar to how   $str ~~ m//   is a smartmatch against the result of applying m// to $_
08:32 pmichaud masak++  # blog post now fixed
08:32 masak then maybe it's just my Perl 5 intuitions playing tricks on me in this case.
08:32 masak jnthn++ # http://6guts.wordpress.com/201​2/04/21/hackathoning-in-oslo/
08:33 pmichaud well, at one time Perl 6 was specced so that   $str ~~ m//   (and $str ~~ s///)  would cause the regex to be applied to $str instead of $_
08:33 pmichaud but we've since eliminated that
08:33 krunen cold pizza breakfast \o/
08:33 pmichaud at least, I know we've eliminated it in the m// case; I somewhat gathered it should be the same for s/// --   i.e.,  s///  is always an immediate substitution on $_, and if you want to do the substitution on anything else you use   $str .= subst(...)
08:34 jnthn Jaffa cake breakfast \o/
08:34 replore_ joined #perl6
08:36 sorear poor JaffaCake
08:37 jnthn om nom
08:38 sorear so that's a real food item huh.
08:38 jnthn oh yes :)
08:38 sorear it's not just Simon Marlow's nick.
08:38 jnthn Have them in he UK too
08:39 tadzik seen uvtc?
08:39 aloha uvtc was last seen in #perl6 2 days 13 hours ago saying "Ok. nm. From looking at existing modules, the current practice seems to be: have one main module, and name your project after it. If you need additonal modules, put them in a package alongside and named after your main module (Perl 5 style).
08:39 aloha ..For example, the Foo-Bar project would supply the Foo::Bar module plus some others, with the filesystem looking like lib/Foo/Bar.pm6, lib/Foo/Bar/Helper.pm6, lib/Foo/Bar/OtherHelper.pm6.".
08:40 sergot joined #perl6
08:40 sergot o/
08:41 sorear o/ sergot
08:41 masak sergocie! \o/
08:43 fglock phenny: tell japhb v8 shell has almost the same speed as perl5 (just 10% slower); I think the pauses are a node.js problem
08:43 phenny fglock: I'll pass that on when japhb is around.
08:43 sergot God morgen ;)
08:44 * sorear -> sleep
08:44 dalek nqp/toqast: f3190cf | jonathan++ | src/QAST/Compiler.nqp:
08:44 dalek nqp/toqast: Actually return register syntax from RegAlloc.
08:44 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/f3190cf118
08:44 masak http://paulgraham.com/todo.html # pg++
08:44 NamelessTee joined #perl6
08:52 sjn pmichaud: http://sjn.hackeriet.no/perl6hack​/hailstone-sequence.pl.profile.gz
08:52 machine1 joined #perl6
08:53 grondilu joined #perl6
08:53 grondilu p6: .say for map (sub { $^a + 2*$^b }).assuming(1), ^3;
08:54 p6eval niecza v16-23-gaa61ed5: OUTPUT«Unhandled exception: Excess arguments to ANON, used 2 of 4 positionals␤  at /tmp/10JxwtLTKq line 0 (ANON @ 1) ␤  at /home/p6eval/niecza/lib/CORE.setting line 995 (ANON @ 5) ␤  at <unknown> line 0 (KERNEL map @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting …
08:54 p6eval ..pugs: OUTPUT«*** Undeclared variable: ("$^a",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0xf6d9ec25>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0xf6d96a79>}),("@_",PELexical {pe_type = (mkType "Array"), pe_proto = <Array:0xf6d9…
08:54 p6eval ..rakudo 5d7626: OUTPUT«This type cannot unbox to a native integer␤  in method munch at src/gen/CORE.setting:5091␤  in method reify at src/gen/CORE.setting:4765␤  in method reify at src/gen/CORE.setting:4677␤  in method reify at src/gen/CORE.setting:4677␤  in method gimme at src/gen/CORE.…
08:54 grondilu p6: sub f { $^a + 2*$^b };.say for map &f.assuming(1), ^3;
08:54 p6eval niecza v16-23-gaa61ed5: OUTPUT«Unhandled exception: Excess arguments to f, used 2 of 4 positionals␤  at /tmp/A6lh8BCnDX line 0 (f @ 1) ␤  at /home/p6eval/niecza/lib/CORE.setting line 995 (ANON @ 5) ␤  at <unknown> line 0 (KERNEL map @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line 2…
08:54 p6eval ..pugs: OUTPUT«*** Undeclared variable: ("$^a",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0xf6ed55f1>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0xf6ed5095>}),("@_",PELexical {pe_type = (mkType "Array"), pe_proto = <Array:0xf6ed…
08:54 p6eval ..rakudo 5d7626: OUTPUT«This type cannot unbox to a native integer␤  in method munch at src/gen/CORE.setting:5091␤  in method reify at src/gen/CORE.setting:4765␤  in method reify at src/gen/CORE.setting:4677␤  in method reify at src/gen/CORE.setting:4677␤  in method gimme at src/gen/CORE.…
08:54 pmichaud sjn: downloaded -- setting up kcachegrind now
08:55 pmichaud r: sub f { $^a + 2*$^b };  say &f.arity
08:55 p6eval rakudo 5d7626: OUTPUT«2␤»
08:56 pmichaud r: sub f { $^a + 2*$^b };  say &f.assuming(1).arity
08:56 p6eval rakudo 5d7626: OUTPUT«0␤»
08:56 pmichaud r: sub f { $^a + 2*$^b };  say &f.assuming(1).signature
08:56 p6eval rakudo 5d7626: OUTPUT«:(*@pos, *%named)␤»
08:57 jnthn .assuming always gives back something with the signature of a delegator at the moment.
08:59 dbr joined #perl6
09:02 sjn pmichaud: http://rosettacode.org/wiki​/Hailstone_sequence#Perl_6
09:08 BigBear joined #perl6
09:08 dalek nqp/toqast: 3dce35c | jonathan++ | src/QAST/Compiler.nqp:
09:08 dalek nqp/toqast: Sketch out QAST::BVal compilation.
09:08 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/3dce35c2a0
09:20 pmichaud .assuming might want to be smarter than that.  :-/
09:21 jnthn pmichaud: Just maybe :)
09:21 jnthn pmichaud: It's a bit fiddly, but do-able.
09:22 jnthn Just means generating signatures on the fly.
09:22 jnthn But out of existing parameter objects, so it's not so bad.
09:22 jnthn Just needs enough beer, or something.
09:24 dalek perl6-examples: b9095f2 | (Salve J. Nilsen)++ | best-of-rosettacode/balanced-brackets.pl:
09:24 dalek perl6-examples: Fix POD, fix bug in 3rd example
09:24 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/b9095f241c
09:24 dalek perl6-examples: a835aa2 | (Salve J. Nilsen)++ | best-of-rosettacode/a (2 files):
09:24 dalek perl6-examples: Add initial versions of two more examples
09:24 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/a835aa2e5b
09:24 tadzik sjn: https://github.com/rakudo/r​akudo/commit/48dd7cd0afeca3
09:25 * fglock gives rakudo beer
09:25 jnthn \o/
09:27 dalek nqp/toqast: 2a08246 | jonathan++ | src/QAST/Compiler.nqp:
09:27 dalek nqp/toqast: First crack at QAST::Stmt and QAST::Stmts.
09:27 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/2a082466cd
09:28 dalek perl6-examples: f633530 | (Filip Sergot)++ | best-of-rosettacode/TODO:
09:28 dalek perl6-examples: [best-of-rosettacode/README] upgrade
09:28 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/f63353014a
09:28 sergot s/README/TODO/ ...
09:30 sjn tadzik: nice! :)
09:34 moritz r: enum A < b c d >; say A(2)
09:34 p6eval rakudo a8f855: OUTPUT«d␤»
09:34 masak \o/
09:35 masak r: enum Weekday <_ Monday Tuesday Wednesday Thursday Friday Saturday Sunday>; say Weekday(4)
09:35 p6eval rakudo a8f855: OUTPUT«Thursday␤»
09:35 tadzik niice
09:36 dalek perl6-examples: 677edbd | (Filip Sergot)++ | best-of-rosettacode/24-game.pl:
09:36 dalek perl6-examples: best-of-rosettacode/24-game.pl
09:36 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/677edbdc0f
09:37 jnthn masak: _ at the start? :P
09:37 jnthn Just :Monday(1)
09:37 jnthn oh, but not in <...>
09:42 frettled r: enum Weekday <_ foo bar zot>; say Weekday(_)
09:42 p6eval rakudo a8f855: OUTPUT«Method 'gist' not found for invocant of class 'Undef'␤  in sub say at src/gen/CORE.setting:6553␤  in block <anon> at /tmp/BOKbuvJVHz:1␤␤»
09:42 frettled goodie
09:43 jnthn hm :)
09:43 jnthn I think masak might be about to...
09:43 frettled r: enum Weekday <_ foo bar zot>; say Weekday(x)
09:43 p6eval rakudo a8f855: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&x' called (line 1)␤»
09:43 frettled LTA :)
09:43 tadzik well, what did you expect?
09:43 jnthn The above is fine, the _ one is LTA.
09:44 frettled yup
09:44 tadzik right
09:46 masak p6: my %h = foo => 5; %h<foo> //= (say "OH NOES"; 42)
09:46 p6eval rakudo a8f855: OUTPUT«OH NOES␤»
09:46 p6eval ..pugs: OUTPUT«*** ␤    Unexpected ";"␤    expecting term postfix, operator, ":", "," or ")"␤    at /tmp/IjQHTOywbd line 1, column 45␤»
09:46 p6eval ..niecza v16-23-gaa61ed5:  ( no output )
09:46 masak niecza++ rakudo--
09:47 jnthn So patch it.
09:48 dalek perl6-examples: a668858 | (Filip Sergot)++ | best-of-rosettacode/ (2 files):
09:48 dalek perl6-examples: TODO list is empty! :(
09:48 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/a668858b76
09:52 masak r: sub foo($x) {}␤&foo.wrap: sub ($x) {}
09:52 p6eval rakudo a8f855: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'foo' will never work with no arguments (line 2)␤    Expected: :($x)␤»
09:52 * masak submits rakudobug
09:52 masak n: sub foo($x) {}␤&foo.wrap: sub ($x) {}
09:52 p6eval niecza v16-23-gaa61ed5: OUTPUT«Potential difficulties:â�¤  $x is declared but not used at /tmp/CfkC9FnfEV line 1:â�¤------> [32msub foo([33mâ��[31m$x) {}[0mâ�¤â�¤Unhandled exception: Unable to resolve method wrap in class Subâ�¤  at /tmp/CfkC9FnfEV line 2 (mainline @ 2) â�¤  at /home/p6eval/niecz…
09:53 masak huh :)
09:53 JimmyZ left #perl6
09:53 JimmyZ joined #perl6
09:56 infosophy First cut of Test::Junkie out -> https://github.com/gam/test-junkie
09:56 masak \o/ infosophy++
09:56 infosophy Please help me squash all non-idiomatic ugliness
09:57 jnthn .oO( Idiomatic ugliness considered fine )
09:57 masak infosophy: looking good :)
09:58 krunen_ joined #perl6
09:58 masak huh! we have 'orelse'!?
10:01 jnthn http://msdn.microsoft.com/en-us/l​ibrary/ea1sssb2%28v=vs.71%29.aspx :)
10:07 masak r: say (375 #`(new, open, or stalled masakbugs) / 1306 #`(masakbugs submitted) * 100 #`(percent)).fmt("%5.2f%%")
10:07 p6eval rakudo a8f855: OUTPUT«28.71%␤»
10:07 masak \o/
10:09 masak actually, there are no stalled tickets at all right now.
10:09 masak r: say (375 #`(new or open masakbugs) / 648 #`(new or open bugs, period) * 100 #`(percent)).fmt("%5.2f%%")
10:09 p6eval rakudo a8f855: OUTPUT«57.87%␤»
10:10 masak r: say (648 #`(new or open bugs) / 2750 #`(bugs submitted) * 100 #`(percent)).fmt("%5.2f%%")
10:10 p6eval rakudo a8f855: OUTPUT«23.56%␤»
10:10 masak hehehe.
10:11 masak 23.56% chance of a bug being fixed in general. 28.71% chance of a masakbug being fixed.
10:11 masak conclusion: route your bug reports through me, and they have a higher chance of being fixed. :P
10:12 masak (and it's statistically significant!)
10:13 moritz r: my @a = <b c>; say (:@a[0]).perl
10:13 p6eval rakudo 48dd7c: OUTPUT«"a" => ["b", "c"]␤»
10:13 masak niice.
10:13 moritz it seems like it ignores the indexing
10:13 moritz I wanted it to construct a => 'b'
10:13 masak moritz: no, precedence.
10:14 moritz r: my @a = <b c>; say (:@a[1]).perl
10:14 p6eval rakudo 48dd7c: OUTPUT«Failure.new(exception => X::OutOfRange.new(what => "Index", got => 1, range => 0..0))␤»
10:16 sisar panda build fails: https://gist.github.com/2463273
10:19 moritz sisar: that usually (but not quite always) means that something is messed up in the install or ~/.perl6/ dir
10:19 moritz I usually do an   rm -rf install/; make clean; cd nqp; git clean -xdf; rm -rf ~/.perl6/lib/ # from inside the rakudo dir
10:19 moritz and then generate everything anew
10:20 * sisar tries
10:21 Chillance joined #perl6
10:21 moritz oh, and you should have a very new rakudo
10:21 moritz so git pull before anything else
10:21 sisar ok
10:26 arnsholt jnthn++ # Clever man
10:27 sisar aye
10:27 * moritz has written 228 lines for MiniDBD::SQLite, and can't test it until CArray[OpaquePointer] is implemented :-)
10:29 dalek nqp/toqast: 6b2e5b2 | jonathan++ | src/QAST/Compiler.nqp:
10:29 dalek nqp/toqast: Start to sketch out QAST::Block handling; loads more to do, of course.
10:29 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/6b2e5b2cb3
10:29 dalek nqp/toqast: 17cc5c8 | jonathan++ | src/QAST/Compiler.nqp:
10:29 dalek nqp/toqast: Various fixes to QAST::Block.new(QAST::IVal.new(:value(42))) style things now actually compile to runnable code.
10:29 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/17cc5c89e4
10:38 tadzik silug: oh, oh. I'm aware of that, and unfortunately, I'm not sure how to fix it :)
10:38 tadzik oh, sisar ^
10:38 tadzik dang
10:38 lestrrat joined #perl6
10:40 moritz arnsholt: how can I pass an unsigned long int to a C function?
10:40 moritz hm, Int might work, our SQL statements shouldn't be too long :-)
10:42 thelazydeveloper joined #perl6
10:47 localhost joined #perl6
10:50 Kid_ joined #perl6
10:51 sporous joined #perl6
10:52 Kid_ hi all
10:52 Kid_ lol
10:54 Kid_ left #perl6
10:54 dalek nqp/toqast: 4aed1c0 | jonathan++ | src/QAST/Compiler.nqp:
10:54 dalek nqp/toqast: Only use ucs4 for regex engine internal strings; encode normal ones as PAST::Compiler does.
10:54 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/4aed1c0cc3
10:56 Kid_ joined #perl6
11:01 JimmyZ Kid_: aloha
11:04 JimmyZ seen Kid_
11:04 dalek nqp/toqast: 95641b4 | jonathan++ | t/qast/qast.t:
11:04 dalek nqp/toqast: Start a test file for QAST.
11:04 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/95641b4602
11:04 aloha Kid_ was last seen in #perl6 7 mins 43 seconds ago joining the channel.
11:26 replore joined #perl6
11:36 dalek nqp/toqast: 2e28049 | jonathan++ | / (3 files):
11:36 dalek nqp/toqast: Start to sketch out infrastructure for halding operations.
11:36 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/2e28049110
11:36 jnthn ...*handling!
11:42 zhutingting joined #perl6
11:42 PacoAir joined #perl6
11:43 sergot joined #perl6
11:44 geekosaur Haldane operations?
11:51 ZAZEN_compute joined #perl6
12:08 moritz https://github.com/moritz/dojo-roman
12:18 dalek nqp/toqast: e2aea7e | jonathan++ | src/QAST/Operations.nqp:
12:18 dalek nqp/toqast: Get a very first cut (with lots of comments about what's left) of nqp operations that map to PIR opcodes in place.
12:18 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/e2aea7ef34
12:18 dalek nqp/toqast: 2e32225 | jonathan++ | t/qast/qast.t:
12:18 dalek nqp/toqast: Add a test for the add_i operation on two QAST::IVals.
12:18 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/2e3222542a
12:21 infosophy coding kata video (using ruby with the roman numerals kata) is at http://vimeo.com/15104374
12:21 infosophy kata starts around 1:55
12:38 sisar joined #perl6
12:53 fglock joined #perl6
12:57 birdwindupbird joined #perl6
12:57 tadzik r: subset Command of Str where 'foo' | 'bar'; sub MAIN (Command $c) { }
12:57 p6eval rakudo 48dd7c: OUTPUT«use of uninitialized value of type Command in string context  in method Str at src/gen/CORE.setting:670␤␤Usage:␤  --setting=SAFE <c> ␤»
13:03 spider-mario joined #perl6
13:10 moritz ok, no prepared statements for mysql today
13:10 masak :/
13:10 moritz it requires filling out memebers of the MYSQL_BIND structure, which I won't replicated with CStruct
13:10 moritz it has ~20 memebers or so
13:11 sisar moritz, clean build of rakudo does not help in building panda, same error. sigh.
13:12 tadzik sisar: I'm aware of that :/
13:12 tadzik sisar: the workaround is that, after all the deps are installed, do PERL6LIB=lib perl6 bin/panda install panda
13:12 tadzik it'll fetch the one from git, not from current directory, but it'd work
13:15 tadzik sorry for that, but I have absolutely no idea what's going on there :)
13:15 tadzik the bright side is we now precompile everything installed with panda, which makes everything roughly 2x faster
13:16 sisar tadzik, also, at least panda issue #13 has now a more informative error message :)
13:17 tadzik sisar: I'll probably close this one in like 10 minutes :)
13:17 sisar ++tadzik
13:17 tadzik it was actually a rakudobug, which I have fixed locally, and now running spectests justin case
13:17 bbkr joined #perl6
13:17 tadzik moritz++ for debugging help
13:17 sisar yes, moritz++
13:30 whiteknight joined #perl6
13:32 tadzik sisar: yep, https://github.com/rakudo/​rakudo/commit/19370a16183 :)
13:35 sisar :) tadzik++
13:36 tadzik nah, bootstrap's still broken for some reason
13:37 sisar yeah, but you got rid of the longstanding warning...
13:37 tadzik aye
13:37 sisar you closing the issue or should I ?
13:38 tadzik I've already closed it, I think
13:38 sisar :)
13:39 bbkr joined #perl6
13:44 tadzik sisar: bootstrap should be fixed too now
13:45 sisar wow. i'll build panda in a min...
13:47 mucker joined #perl6
13:47 lestrrat joined #perl6
13:48 Trashlord joined #perl6
13:53 JimmyZ delak?
13:59 sergot joined #perl6
14:00 Khisanth joined #perl6
14:03 sisar tadzik, https://gist.github.com/2464247 . I started with a completely fresh clone of the panda repo.
14:03 tadzik argh, wtf
14:04 tadzik did you clean ~/.panda before?
14:04 sisar oh, no i did not. i'll do that now...
14:07 cggoebel joined #perl6
14:07 tadzik hugme: add gam to perl6
14:07 hugme tadzik: sorry, you don't have permissions to change 'perl6'
14:07 tadzik dang
14:09 sisar tadzik, panda built successfully! yay!
14:09 tadzik \o/
14:10 sisar t/panda/fetcher.t .... fatal: repository 't/' does not exist <--- when the script tests panda
14:11 tadzik yeah, there's an issue for that
14:11 tadzik this is expected, it comes from git and I know of no cross-platform way to silence it
14:11 sisar well, anyways, panda works. tadzik++
14:13 sisar it just looks like that more robust error handling is required when building panda
14:13 * sisar afk
14:14 spider-mario joined #perl6
14:40 dalek roast: a45e1b2 | (Geir Amdal)++ | S16-filehandles/filestat.t:
14:40 dalek roast: tests for IO filehandle stat times (changed/modified/accessed)
14:40 dalek roast: review: https://github.com/perl6/roast/commit/a45e1b21d8
14:40 dalek roast: 04cb7bc | moritz++ | S16-filehandles/filestat.t:
14:40 dalek roast: Merge pull request #18 from gam/master
14:40 dalek roast:
14:40 dalek roast: tests for IO filehandle stat times (changed/modified/accessed)
14:40 dalek roast: review: https://github.com/perl6/roast/commit/04cb7bcc7d
14:42 mucker is there an operator like $foo.>> in perl6 ?
14:42 moritz what do you want to achieve?
14:43 mucker well I see it all over in fglocks perlito6/src6/Perl5/Emitter.pm code
14:44 mucker Just want to know if its a core operator in perl6
14:46 JimmyZ nom: ('hello', '#perl 6').>>.say;
14:46 p6eval rakudo 19370a: OUTPUT«===SORRY!===␤Confused␤at /tmp/jkxLYPogxh:1␤»
14:46 JimmyZ bug
14:46 mucker https://github.com/themucker/Perlito/blob/​master/src6/lib/Perlito6/Perl5/Emitter.pm
14:46 mucker line 64
14:46 JimmyZ nom: ('hello', '#perl 6')>>.say;
14:46 p6eval rakudo 19370a: OUTPUT«hello␤#perl 6␤»
14:47 mucker what does it do JimmyZ ?
14:47 moritz kall a method on each element of the list/parcel
14:47 moritz s/k/c/
14:48 geistteufel joined #perl6
14:49 mucker kall is phonetically unambiguous :)
14:50 mucker what is the diff b/w a list and a parcel. Are all the elements in the parcel in unevaluated form like lisp's quote operator
14:52 dalek rakudo/nom: a527e09 | moritz++ | t/spectest.data:
14:52 dalek rakudo/nom: run new filestat.t test file
14:52 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a527e09edf
14:52 dalek rakudo/nom: 80f140f | moritz++ | src/core/Array.pm:
14:52 dalek rakudo/nom: use native int iterator variable in Array.REIFY
14:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/80f140f282
14:53 pmichaud a parcel is a representation of a syntactic construct
14:53 pmichaud i.e.,    (1, 2, @a, $b)   is a parcel
14:53 pmichaud the parcel never changes -- it always reflects what was in the program
14:53 masak JimmyZ: yes, but don't combine >> and side effects :)
14:53 pmichaud a list is a mutable sequence of elements
14:54 pmichaud i.e., one can push, pop, shift, unshift, etc on a list
14:55 mucker pmichaud: by exposing parcel as a separate entity, what is the gain ?
14:57 pmichaud well, originally Parcels were intended to be somewhat hidden... but they seem to "leak" out no matter what so we decided we had better go ahead and document their existence
14:58 mucker Ah, ok.
14:58 pmichaud also, parcels are very important when dealing with argument binding and the like
14:59 pmichaud i.e., where parcels become important is when binding to a signature
14:59 pmichaud thus  (1,2,$b,@a)  has a different meaning as a Parcel than it would as a List, and its Parcel-ish meaning is the important one to know when (e.g.) calling a function or binding to a parameter list
14:59 plutoid joined #perl6
15:01 mucker ok .. like when you are trying giving subroutine ref arguments .. amirite ?
15:01 pmichaud yes, at least to the extent that we have references :)
15:02 mucker :)
15:02 * mucker 's doubt clarified
15:05 pmichaud currently the best place to see what Parcels are used for is S06
15:11 masak "He used the compiler's *self-compilation speed* as a measure of the compiler's quality." -- http://www.ics.uci.edu/~fr​anz/Site/pubs-pdf/BC03.pdf "Oberon -- The Overlooked Jewel"
15:11 pmurias joined #perl6
15:11 pmurias fglock: hi
15:13 dalek nqp/toqast: 814d395 | jonathan++ | src/QAST/Compiler.nqp:
15:13 dalek nqp/toqast: Fix typo.
15:13 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/814d395a77
15:13 dalek nqp/toqast: 8475b80 | jonathan++ | t/qast/qast.t:
15:13 dalek nqp/toqast: Test ops within ops.
15:13 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/8475b80757
15:15 uvtc joined #perl6
15:15 uvtc tadzik, hi
15:15 tadzik hey
15:15 tadzik oh, the email
15:15 uvtc What do you think of adding a "docs" badge to modules.perl6.org?
15:15 tadzik the badge. Right
15:16 tadzik I was considering if we maybe want to use --doc=HTML and actually show those docs on the same page
15:16 * moritz didn't think much about it, but enabled issues for the modules.perl6.org repo on github
15:16 tadzik that has some nasty security issues though
15:17 uvtc tadzik, I think at some point, either modules.perl6.org or some other site should extract and host module's Pod docs.
15:18 uvtc You don't want to end up like Python, where there's no docs at their module repository except for what folks explicitly upload themselves (as html). I think it's important to be able to have html docs for your modules, but the docstrings/pod should get extracted and rendered automatically for easy browsing.
15:19 uvtc (Like search.cpan.org)
15:19 moritz agreed. "Just" needs somebody doing it.
15:19 tadzik :)
15:20 uvtc tadzik, what are the possible nasty security issues?
15:20 tadzik uvtc: well, extracting Pod consists of running perl6 --doc File.pm
15:20 tadzik and that, by spec, runs all the phasers; BEGIN{}, INIT{} etc
15:20 tadzik one could put some mailicious code in there
15:21 tadzik I suppose we can use --setting=SAFE for that, and we're as safe as p6eval
15:21 uvtc Hm. I'd thought that that anything *not* Pod was considered "ambient" material.
15:22 timotimo uvtc: to be fair, most docs on the pypi that are uploaded that way, the html route, are generated from restructuredtext docs that usually come with the source code distribution, and rendered with sphinx, which is a pretty good tool
15:22 kaare_ joined #perl6
15:23 timotimo so it's not terrible. it's also not as good as what cpan has.
15:23 tadzik "ambient"?
15:23 uvtc timotimo, To be clear, I *love* that you can upload your own html docs and have it hosted at the cheeseshop. I just think it's terrible that --- aside from that --- the docstrings aren't extracted, rendered, and hosted.
15:24 uvtc tadzik, Yes, S26 uses that term. "Anything in a document that is neither a Pod directive nor contained within a Pod block is treated as "ambient" material."
15:24 tadzik right
15:24 timotimo that's true, but at least in python it's very easy to get to the docstring of a method, class or module ;)
15:24 tadzik still, the code gets run. If not in INIT, then in DOC INIT
15:24 timotimo not sure how it works in perl5. it doesn't yet in perl6 i believe.
15:24 xinming_ joined #perl6
15:24 uvtc timotimo, You've got to download a package, open it up, and run pydoc on the code to read those docs. Maybe not "terrible" per se, but certainly silly.
15:25 timotimo personally, i'd just be spending much time on a repl, where the help command is quite useful, as are the ? and ?? thingies ipython offers
15:25 tadzik in Perl 5 it's not a problem, for POD is just a comment there, and not part of the language syntax
15:25 uvtc timotimo, Yes. It's fantastic that I can get the docstring of a package, module, class, method, function in Python.
15:25 erkan joined #perl6
15:25 erkan joined #perl6
15:25 timotimo also: you wouldn't "download a package and open it up" either, you'd install it via easy_install, pip, or your distros package management
15:25 tadzik in Perl 6 you need a Perl 6 compiler to process Pod correctly
15:27 uvtc timotimo, Right --- install via pip into a virtualenv, then use pydoc. Still though, seems like a waste to not have those docs available right at the cheeseshop. This is one area where search.cpan simply trounces the cheeseshop, IMO.
15:27 timotimo no doubt
15:29 tadzik could somebody add 'gam' to perl6/ecosystem?
15:29 geistteufel joined #perl6
15:29 moritz tadzik: he already has commit access
15:29 tadzik oh, ok
15:30 pmichaud r:  sub xyz(:foo(@f)) { ... };  say &xyz.signature.perl
15:30 p6eval rakudo 80f140: OUTPUT«:(:foo(@f))␤»
15:31 pmichaud r: sub xyz(@foo) { ... };  say &xyz.signature.perl
15:31 p6eval rakudo 80f140: OUTPUT«:(@foo)␤»
15:31 uvtc tadzik, after having been spoiled by search.cpan.org, it seems like a given that a module's Pod docs should be available somewhere online. Otherwise, it's missing out on a valuable resource. I don't know enough about Perl 6 deals with Pod to suggest a safe way to do it though.
15:31 tadzik that's a must, imho
15:31 tadzik it's just a bit hard to do it safely and correctly with PErl 6
15:32 masak p6: say Inf.Int; say NaN.Int
15:32 pmichaud ^^ another regression... will file rakudobug
15:32 p6eval pugs: OUTPUT«1797693134862315907729305190789024733617​97697894230657273430081157732675805500963132708​47732240753602112011387987139335765878976881441​66224928474306394741243777678934248654852763022​19601246094119453082952085005768838150682342462​8814739131105408272371633505106845862982399472…
15:32 p6eval ..niecza v16-23-gaa61ed5: OUTPUT«Inf␤NaN␤»
15:32 p6eval ..rakudo 80f140: OUTPUT«Cannot coerce Inf to an Int␤  in method gist at src/gen/CORE.setting:8666␤  in sub say at src/gen/CORE.setting:6554␤  in block <anon> at /tmp/P_qEK2deal:1␤␤»
15:32 masak https://rt.perl.org/rt3/Ti​cket/Display.html?id=61602
15:33 dalek roast: 07e31a8 | moritz++ | S12-methods/accessors.t:
15:33 dalek roast: test contextualization of %.foo style calls (RT #112236)
15:33 dalek roast: review: https://github.com/perl6/roast/commit/07e31a86ed
15:33 * masak updates https://rt.perl.org/rt3/Ti​cket/Display.html?id=61602 since the behavior has now changed
15:34 dalek rakudo/nom: f649408 | moritz++ | t/spectest.data:
15:34 dalek rakudo/nom: run new accessors test file
15:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f6494082df
15:35 * masak ==> plane
15:35 jnthn r: masak ==> plane
15:35 p6eval rakudo 80f140: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at line 1, near " plane"␤»
15:37 icwiener joined #perl6
15:38 spider-mario speaking about regressions, I’ve found git-bisect to be a great tool to find their causes
15:38 uvtc tadzik, Regardless of whether or not modules.perl6.org can extract and render a given module's Pod, I think that's separate from my earlier suggestion of having a "docs" badge. I think it's important to encourage module authors to include Pod, and encouragement seems to be the purpose of the badges.
15:38 spider-mario (did you know about git-bisect? do you use it?)
15:39 zhutingting joined #perl6
15:40 moritz yes. Yes.
15:40 uvtc tadzik, Unless simply checking if a given module contains Pod necessitates running it, in which case we're back to the security issues you mentioned.
15:41 moritz no, that can be done much easier
15:41 moritz ack '^=\w' is a good approximation
15:41 timotimo make the package uploader extract the pod docs as part of the upload sequence on their own machine?
15:42 timotimo it shouldn't be too much computational effort and that way any attempt at putting evil code onto the infrastructure is useless
15:42 uvtc timotimo, Unless I'm misunderstanding, there's no "package uploader" ... currently, everything is just pulled from github, correct?
15:43 timotimo oh, in that case that's a bit more complicated
15:43 moritz but at some point, we really want releases of modules
15:43 moritz and when that's the case, we might as well have uploads
15:43 dalek roast: 2ffae45 | moritz++ | S03-operators/short-circuit.t:
15:43 dalek roast: RT #90158, ||= on an array
15:43 dalek roast: review: https://github.com/perl6/roast/commit/2ffae45a51
15:44 pmichaud or at the least, have the maintainers periodically generate files into the repo as part of their "release"
15:44 pmichaud but yes, I agree module releases are key
15:45 uvtc pmichaud, what about just having module author's create files available as "downloads" (under the "Downloads" link) at github?
15:45 pmichaud I think that could work well, yes.
15:45 pmichaud certainly seems saner than pull directly from the repo
15:47 dalek perl6-examples: d1be5ad | (Jan Ingvoldstad)++ | cookbook/01strings/01-00introduction.pl:
15:47 dalek perl6-examples: Cleanup, mostly trailing whitespace
15:47 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/d1be5ad071
15:47 dalek perl6-examples: ad1054a | (Jan Ingvoldstad)++ | best-of-rosettacode/ (6 files):
15:47 dalek perl6-examples: Merge branch 'master' of github.com:perl6/perl6-examples
15:47 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/ad1054a94f
15:48 pmurias one problem with having module authors upload html is the have to reupload it every time we update the pod formatter
15:48 dalek roast: a677cbb | moritz++ | S14-roles/mixin.t:
15:48 dalek roast: RT #101022, mixing a role into True
15:48 dalek roast: review: https://github.com/perl6/roast/commit/a677cbb13c
15:48 Psyche^ joined #perl6
15:48 timotimo yes, i was suggesting to generate a secure subset of perl6 that only contains maybe signatures, pod comments and basic class structure?
15:49 timotimo instead of html
15:49 timotimo that also sounds like a hack, though :|
15:49 tyatpi joined #perl6
15:49 moritz well, you need to be able to run code at BEGIN time to export all the symbols you need
15:49 moritz and without those symbols you can't parse Perl 6
15:50 pmurias how does cpan testers handle the security issues?
15:50 moritz they trust.
15:50 frettled And have been very lucky.
15:50 uvtc pmurias, I think the point of allowing module authors to upload html is that they can generate their own raw html docs --- outside of and not connected with their module's Pod docs --- and make that available at modules.perl6.org somewhere.
15:51 moritz most automated cpan smokers run on separate VMs anyway
15:51 moritz or at least in a chroot
15:52 immortal joined #perl6
15:52 immortal joined #perl6
15:53 uvtc pmurias, for example, one might put api docs into their modules, but also include a docs/tutorial.html in their project.
15:54 uvtc Personally, I think a good convention would be: if there's a doc or docs dir, and there's html files in it, then automatically host those somewhere at modules.perl6.org.
15:55 pmurias it seems sensible
15:55 uvtc That way, if a user writes a docs/tutorial.pod, and they generate a docs/tutorial.html from it, that will show up online.
15:56 pmurias encouraging .html rather then .pod doesn't seem a good idea
15:56 dalek roast: 2f2567f | moritz++ | S06-signature/optional.t:
15:56 dalek roast: RT #79642, optional-but-not-bound hash is just a normal, empty Hash
15:56 dalek roast: review: https://github.com/perl6/roast/commit/2f2567fa9f
15:56 pmurias compare the docs of module on npmjs.org to metacpan.org
15:57 pmurias or the rather silly "cute" homepages ruby modules have
15:57 uvtc pmurias, I don't think you're encouraging folks to write raw html. No one wants to subject themselves to that. What you're encouraging is that they write a docs/tutorial.pod, or docs/tutorial.txt, or docs/tutorial.rst, or whatever, which they will then convert to html because they know that modules.perl6.org will display it if there's html there.
15:57 dalek nqp/toqast: 2d62455 | jonathan++ | src/QAST/Operations.nqp:
15:57 dalek nqp/toqast: Check argument counts to nqp ops.
15:57 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/2d62455ae3
15:59 frettled and if converting to HTML is easy, that's hardly any hardship
16:00 uvtc frettled, Right. Now that you can do `perl6 --doc=html ...`, someone who writes docs/tutorial.pod can just create the html themselves (and add a *.html in their docs/.gitignore).
16:01 uvtc frettled, Oh, except then that won't end up on github...
16:02 pmurias it seems ok for modules.perl6.org
16:03 uvtc pmurias, I meant that, if the html is generated from some other markup (Pod, Markdown, whatever), then it's not going to be version controlled, and so it won't be on github, and so modules.perl6.org doesn't have a way to acquire it...
16:05 dalek roast: e7f5ef3 | moritz++ | S02-literals/radix.t:
16:05 dalek roast: RT #107756, :10() form needs a string as argument, not a number
16:05 dalek roast: review: https://github.com/perl6/roast/commit/e7f5ef31f7
16:06 timotimo if mp6o io pull branch for the code, why not ce ?
16:06 timotimo lke github pages?
16:06 pmurias timotimo: ?
16:06 * moritz can't parse that either
16:07 uvtc timotimo, I see that "mp6o" == modules.perl6.org, but the rest is fuzzy.
16:08 frettled Hm.  I'm fiddling with the cookbook's introduction to the strings chapter, and I just realized something that may not be intentional: the example code is often (nearly always) repeated outside of a POD block, at least it is in 01-00introduction.pl.  So far, I've just pretended to be a monkey and just tidied up the examples in general, but is there any reason why there is running code in that .pl?  I just want to remove it all, and then I can do: ...
16:08 frettled ... perl6 --doc 01-00introduction.pl
16:08 frettled I think this is the right time to make a decision here, because it will influence how I, ehrm, attack the rest of the cookbook (if I get that far, hee-hee).
16:09 moritz frettled: well, I guess the idea was that you can actually run that code and see if it works :-)
16:09 uvtc One thing to start with that might soon be useful: If a module contains a docs dir containing any .pod files, and those files are pure Pod (containing no Perl 6 code), then m.p6.o will render them as html. (?)
16:09 moritz frettled: tadzik++ today patched rakudo not to run the code wwhen --doc is given on the command line
16:09 moritz uvtc: that's a good place to start, IMHO
16:10 uvtc Which is preferred in the Perl world: "doc" dir or "docs" dir?
16:11 frettled moritz: ahaha, I haven't recompiled more than twice today, so…
16:11 moritz frettled: the patch came in at 11:20 today :-)
16:11 sirhc joined #perl6
16:12 pmurias uvtc: you could support both ;)
16:13 uvtc moritz, re. tadzik's change to --doc (not running any code when), are you saying that it's now actually ok and safe for m.p6.o to run `perl6 --doc=html ...` on modules to generate their docs?
16:13 moritz uvtc: no
16:13 timotimo sorry, firefox went berserk and my x server decided to discard half my keystrokes
16:13 timotimo what i was trying to say was:
16:13 pmurias uvtc: in the perl5 world the docs are usually stored in Foo::Manual::*
16:13 moritz uvtc: it's not running mainline code, but still BEGIN code
16:14 timotimo if mp6o is set up to pull from the master branch to get the code, why not define a name to use for rendered documentation html? like github pages
16:14 uvtc moritz, I see. Thanks.
16:14 frettled moritz: ISTR that this is an issue with perldoc for Perl 5 as well
16:15 pmurias moritz: isn't the code on module.perl6.org considered "trusted"? ;)
16:15 moritz timotimo: IMHO branches are for stuff that are meant to diverge. Documentation is meant to stay in sync with the code
16:15 moritz pmurias: yes, "trusted" :-)
16:15 timotimo yes, that came to me while i was waiting for my computer to react again
16:15 moritz that's a good way of phrasing it
16:16 frettled It has the huge benefit that we sort of know who committed what and when.
16:17 dalek roast: ce0ef21 | moritz++ | S12-methods/accessors.t:
16:17 dalek roast: RT #78678, inheritance trees with same-named attributes and accessors in both parent and child
16:17 dalek roast: review: https://github.com/perl6/roast/commit/ce0ef21080
16:18 frettled moritz: but yes, the idea probably was to see if the code works.  The problem was that it couldn't, since it redeclared the same variables.  :)
16:18 timotimo apparently firefox saw the need to open 450 tabs with about:blank for me
16:18 uvtc pmurias, Ah, right. With Perl 5, you often just put Foo/Manual/Tutorial.pod right in there next to your .pm files. To me that seems like it might be an artifact of how the software translates modules' POD into html. Seems more sensible to put a tutorial.pod into a top-level docs dir, and use the Pod in modules for API docs.
16:18 frettled …I suppose it could have put them in blocks…
16:18 frettled timotimo: oh, that's lovely.
16:19 moritz frettled: I won't advise you one way or another, because I'm not deep in that matter. Just do what makes sense to you
16:19 moritz and forgiveness > permission
16:19 moritz :-)
16:19 uvtc moritz, How could you check if a .pod file contained only Pod (documentation), and not any code?
16:19 pmurias uvtc: Foo::Manual::Tutorial seems better
16:19 pmurias to me at least
16:20 timotimo frettled: kind of like a pup would poo on your carpet, sit next to it and look at you with big eyes, as if to say "look what i made for you <3"
16:20 frettled moritz: I've been taking liberties already, but occasionally, it's nice to check one's compass.
16:20 frettled timotimo: hee-hee
16:20 uvtc pmurias, Why mix your manual in with your modules? Namespaces are for keeping names from clashing...
16:20 moritz uvtc: I suppose you could write a very simple POD parser that only extracts the boundaries of the POD, and see if the rest is empty
16:20 pmurias uvtc: yes
16:21 pmurias uvtc: you do not want all your tutorial.pod files to clash ;)
16:21 uvtc moritz, Ah, github.com/perl6/modules.perl6​.org/web/build-project-list.pl is written in Perl 5, not Perl 6.
16:22 dalek roast: 2f0ccea | moritz++ | S02-magicals/progname.t:
16:22 dalek roast: unfudge passing test
16:22 dalek roast: review: https://github.com/perl6/roast/commit/2f0ccea443
16:23 moritz uvtc: and the server it runs on isn't beefy enough to build rakudo on it
16:23 uvtc moritz, thanks for the help.
16:23 moritz uvtc: but we could just do it on another server, and rsync it over
16:25 dalek rakudo/nom: dfea6b3 | moritz++ | tools/autounfudge.pl:
16:25 dalek rakudo/nom: fix PERL6LIB handling in autounfudge.pl
16:25 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dfea6b312c
16:26 uvtc moritz, "Shut down all services except basic life-support, we're going to build Rakudo..."
16:27 uvtc ;)
16:27 moritz :-)
16:27 frettled moritz: you were right, tadzik++ did fix it enough to work for my case. Yay
16:28 moritz frettled: \o/
16:31 noam_ joined #perl6
16:32 moritz r: say A(3); enum A <b c d e f>;
16:32 p6eval rakudo f64940: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&A' called (line 1)␤»
16:34 frettled I'm very nearly employing TDD for the docs ;)
16:36 sergot joined #perl6
16:38 mucker joined #perl6
16:42 dalek nqp/toqast: 37cbc8f | jonathan++ | src/QAST/ (2 files):
16:42 dalek nqp/toqast: Start getting the coercion infrastructure in place; it complains about the (many) cases it doesn't know.
16:42 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/37cbc8f066
16:42 dalek roast: 1858f90 | moritz++ | S03-operators/context.t:
16:42 dalek roast: RT #76320, %$h coercion syntax
16:42 dalek roast: review: https://github.com/perl6/roast/commit/1858f9030b
16:43 Moukeddar joined #perl6
16:43 moritz down to 73 testneeded tickets
16:45 jnthn \o/
16:46 tadzik is dinner in 15 minutes?
16:46 tadzik I may happen to be a bit late-ish
16:46 moritz tadzik: we're also a bit late
16:47 tadzik cool
16:47 tadzik so what's your ETA?
16:48 jnthn We're plotting to leave here in 15-20 mins
16:49 tadzik okay
16:49 uvtc moritz, Can you show me how m.p6.o's build-project-list.pl is called in its cron job?
16:51 moritz uvtc: http://perlpunks.de/paste/show/4f9436fb.98e.2f9
16:51 frettled tadzik: we've got a table reserved for 19:30
16:51 uvtc moritz, thanks.
16:52 moritz uvtc: you're welcome
16:53 tyatpi joined #perl6
16:54 moritz rakudo: my @t; for < a b > { @t.push( sub { $OUTER::_ } ) }; say @t.perl
16:54 p6eval rakudo f64940: OUTPUT«Array.new(sub _block1014() { ... }, sub _block1014() { ... })␤»
16:55 moritz rakudo: my @t; for < a b > { @t.push( (sub { $OUTER::_ } ).() ) }; say @t.perl
16:55 p6eval rakudo f64940: OUTPUT«Array.new("a", "b")␤»
16:57 frettled Heard: "snacks on a plane"
17:02 nif joined #perl6
17:02 jnthn -> nom
17:11 dalek tablets: ec8258b | (Herbert Breunung)++ | docs/appendix-a-index.txt:
17:11 dalek tablets: fixing 2 links
17:11 dalek tablets: review: https://github.com/perl6/tablets/commit/ec8258b7f6
17:11 dalek tablets: 7fe58de | (Herbert Breunung)++ | docs/build-html.py:
17:11 dalek tablets: update README and remove old python builder script, also updated http://www.perlfoundation.org/​perl6/index.cgi?perl_6_tablets
17:11 dalek tablets: review: https://github.com/perl6/tablets/commit/7fe58def05
17:13 raiph joined #perl6
17:17 s1n joined #perl6
17:19 dalek tablets: 56467ee | (Herbert Breunung)++ | docs/appendix-a-index.txt:
17:19 dalek tablets: optimized content and linking of increment and decrement ops
17:19 dalek tablets: review: https://github.com/perl6/tablets/commit/56467eecea
17:24 dalek tablets: 379d151 | (Herbert Breunung)++ | README.md:
17:24 dalek tablets: now reall updated readme
17:24 dalek tablets: review: https://github.com/perl6/tablets/commit/379d151ee9
17:34 MayDaniel joined #perl6
17:54 pmurias joined #perl6
17:55 mucker_ joined #perl6
17:59 mucker_ joined #perl6
18:01 mucker_ joined #perl6
18:01 mucker joined #perl6
18:03 jaffa4 joined #perl6
18:05 s1n joined #perl6
18:11 fglock hmm - nice article about compiler speed and simplicity - http://www.ics.uci.edu/~fr​anz/Site/pubs-pdf/BC03.pdf
18:16 mucker joined #perl6
18:28 mucker joined #perl6
18:30 alvis`` joined #perl6
18:34 tadzik1 joined #perl6
18:35 szbalint_ joined #perl6
18:35 araujo_ joined #perl6
18:38 eiro joined #perl6
18:38 mucker joined #perl6
18:38 mucker joined #perl6
18:39 machine1 joined #perl6
18:39 DarthGandalf joined #perl6
18:44 dalek tablets: 2104da4 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
18:44 dalek tablets: repair a link and format some code snippets properly
18:44 dalek tablets: review: https://github.com/perl6/tablets/commit/2104da4d7f
18:45 FACEFOX-DOT-COM joined #perl6
18:46 lichtkind jnthn: hai
18:46 lichtkind raiph: prost
18:47 fodas joined #perl6
18:51 icwiener joined #perl6
18:51 birdwindupbird joined #perl6
18:53 FACEFOX joined #perl6
18:53 sadsad joined #perl6
18:53 snearch joined #perl6
18:55 sorear good * #perl6
18:57 colomon o/
18:57 au joined #perl6
18:59 sorear o/ colomon
18:59 M_o_C joined #perl6
19:02 mucker joined #perl6
19:06 raiph hi all
19:06 sorear Hello raiph
19:09 raiph chromatic, re P6: "Getting away from recursive descent parsing (like I suggested a couple of years ago) or addressing any of a dozen suggestions I posted on the wiki a couple of years ago would also help."
19:09 raiph (from http://www.reddit.com/r/perl/comme​nts/sm7cf/and_in_other_perl_6_news​_what_if_perl_6_was_a_cup/c4f9kol)
19:10 raiph (i provoked this by posting a p6 news summary on reddit)
19:17 revdiablo joined #perl6
19:18 revdiablo joined #perl6
19:19 revdiablo joined #perl6
19:20 fglock o/
19:23 revdiablo joined #perl6
19:26 pmurias fglock: how much sense would it make to add an optional optimising pass/backend to perlito which would aim to avoid loosing speed for all the small perl5/javascript differences?
19:27 pmurias fglock: I could work on it as a part of my university course
19:28 fglock pmurias: it looks interesting, do you have some specific optimization in mind?
19:28 fglock did you look at the optimizations that are already in place?
19:29 fglock (today I've just made it a bit slower, by adding new control exceptions)
19:31 cggoebel joined #perl6
19:31 cognominal joined #perl6
19:35 fglock in Perlito5::Javascript, some things we know the type/context at compile-time and this allows some shortcuts
19:47 sisar joined #perl6
20:08 * masak home
20:08 masak \o/
20:08 NamelessTee joined #perl6
20:08 fglock pmurias: it would be great if you could work on it as part of the course
20:09 sorear masak!
20:09 mathw masak: welcome home
20:10 dalek tablets: a8732d2 | (Herbert Breunung)++ | README.md:
20:10 dalek tablets: updated todo list
20:10 dalek tablets: review: https://github.com/perl6/tablets/commit/a8732d2320
20:13 masak and I promised sjn to blog, so I'll do that now.
20:13 mathw yay
20:13 masak feels like the least I could do after this amazing weekend.
20:13 mathw it sounds like it was good
20:13 masak oh, it was.
20:14 masak mathw, you need to start coming to these things. we need you.
20:14 * mathw 's flattery meter explodes
20:15 masak also, you need to get off your lazy ass and finish Form.pm :P
20:15 dalek tablets: 85c9ec0 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
20:15 dalek tablets: better explanation and links for err and // +minor fix
20:15 dalek tablets: review: https://github.com/perl6/tablets/commit/85c9ec039e
20:15 mathw lazy? hah
20:17 mathw I'd quite like to take some time off and do some Perl 6 hacking
20:17 mathw it'd be a nice change of pace
20:18 masak do it!
20:18 mathw I'm intending to when we get version 2 out the door at work
20:18 mathw I need a break after that, definitely
20:18 mathw release and a bit of time for the inevitable post-launch bugfixes
20:18 mathw and then I'm having a week off
20:20 masak \o/
20:20 masak sounds utterly apt.
20:20 mathw so there should be some Perl 6 in that
20:21 masak yes, there should :)
20:23 mathw :)
20:23 mathw as for 'finish'
20:23 mathw how do you 'finish'something?
20:23 mathw I'll accept adding a few features:)
20:24 dalek tablets: 19006bf | (John Gabriele)++ | README.md:
20:24 dalek tablets: Tuned up wording in README regarding ways to contribute.
20:24 dalek tablets: review: https://github.com/perl6/tablets/commit/19006bfaee
20:25 mathw It does frustrate me that I'm interested and have the skills to help, but I do not have space in my everyday life for it
20:26 masak I know the feeling.
20:26 ens if only there were more hours in the day
20:27 mathw if only I could run my brain at full speed all day every day
20:27 uvtc `use More::Time`
20:27 masak my $work is quite nice, but ever since I started here, I've had less time for Perl 6. I've had to find what small gaps in evenings and weekends that I could.
20:27 masak jnthn seems much better at doing this :) I should ask him how he does it.
20:28 mathw my $work is awesome, but it has squeezed everything
20:28 mathw and I've also become increasingly committed to aikido in all its awesomeness
20:29 mathw I've been thinking about giving up music lessons to make more room
20:30 dalek tablets: 62abe0f | (John Gabriele)++ | README.md:
20:30 dalek tablets: Oof. fixed my typo.
20:30 dalek tablets: review: https://github.com/perl6/tablets/commit/62abe0fb88
20:36 uvtc joined #perl6
20:37 uvtc moritz, I'm having trouble running modules.perl6.org's build-project-list.pl:
20:37 uvtc Can't locate object method "connect_timeout" via package "Mojo::IOLoop" at build-project-list.pl line 20
20:37 uvtc Have you seen that one before?
20:43 __sri connect_timeout got deprecated somewhen last year, it's a user agent attribute now
20:46 bruges_ joined #perl6
20:47 uvtc __sri, Ah, perhaps the version that's currently being used for modules.perl6.org is older then. Hm.
20:47 cj TimToady: mind if I spam you a linky link?
20:47 uvtc __sri, thanks.
20:48 cj maybe I should /msg you instead, but my purple windows usually scroll off the side of my huge list.
20:49 sorear cj! \o/
20:49 xinming_ joined #perl6
20:49 pmurias fglock: what i'll focus on first would be to avoid some of the context casts, and avoiding corner cases with builtins
20:49 cj sorear: !!!
20:49 awwaiid_ joined #perl6
20:49 cj okay, well since I mention y'all in the link as well, I might as well paste it.
20:49 uvtc __sri, Can you advise on how to change line 20 at https://github.com/perl6/modules.perl6.o​rg/blob/master/web/build-project-list.pl ?
20:49 cj but facebook didn't make any effort to shorten it.
20:49 pmurias fglock: where can I find the current optimalisations?
20:49 cj https://www.facebook.com/photo.php?fbid=33849572​15744&amp;set=a.1136900255725.2021257.1023926097​&amp;type=1&amp;theater&amp;notif_t=photo_reply
20:50 sporous joined #perl6
20:50 cj fglock: !!!
20:50 cj can you folks tune that in?
20:50 uvtc (How do I link to a particular line number in a file at github?)
20:50 sorear unsupported browser :p
20:50 sorear uvtc: they're anchors
20:51 __sri uvtc: my $ua = Mojo::UserAgent->new(connect_timeout => 10);
20:51 uvtc sorear, Ha. I see --- just click on them. Doh. Thanks. :)
20:52 uvtc Ack ... gotta go. __sri, thanks. Will try that. Bye
20:53 drbean_ joined #perl6
20:53 ggoebel__ joined #perl6
20:54 bip` joined #perl6
20:56 fglock reading https://github.com/audreyt/pugs/blob​/master/perl5/PIL2JS/libjs/PIL2JS.js - another implementation of perl6 in javascript
20:57 fglock it's interesting to compare the workarounds
21:00 takesako joined #perl6
21:02 FACEFOX-DOT-COM joined #perl6
21:05 machine1 joined #perl6
21:07 mdupont joined #perl6
21:07 FACEFOX joined #perl6
21:09 whiteknight joined #perl6
21:14 ggoebel__ joined #perl6
21:17 * [Coke] wonders why irssi keeps losing things off backscroll. bah.
21:18 masak lol, I blogged! \o/ http://strangelyconsistent.org/bl​og/revenge-of-the-oslo-hackathon
21:18 sorear eh?  I think it just has a limit
21:21 dalek tablets: fc58508 | (Herbert Breunung)++ | README.md:
21:21 dalek tablets: readme
21:21 dalek tablets: review: https://github.com/perl6/tablets/commit/fc58508480
21:21 dalek tablets: 9b35a0b | (Herbert Breunung)++ | README.md:
21:21 dalek tablets: add CONTRIBUTORS
21:21 dalek tablets: review: https://github.com/perl6/tablets/commit/9b35a0b8b2
21:22 dalek tablets: 2427143 | (Herbert Breunung)++ | README.md:
21:22 dalek tablets: format CONTRIBUTORS
21:22 dalek tablets: review: https://github.com/perl6/tablets/commit/24271436a3
21:29 machine1 joined #perl6
21:42 masak lol, I blogged! \o/ http://strangelyconsistent.org/blog​/speed-up-by-a-factor-of-6-million
21:43 masak (yes, that's two blog posts in the space of one hour)
21:46 jaffa4 Macros should be replacements for templates I guess
21:50 masak well, in a very real sense, that's what macros are. templates.
21:51 masak you do an HTML template because you want to repeatedly insert HTML somewhere with only minor variations.
21:52 masak you do a macro because you want to repeatedly insert code somewhere with only minor variations.
21:55 wooden joined #perl6
21:55 wooden joined #perl6
21:59 cognominal_ joined #perl6
22:03 fgomez joined #perl6
22:07 masak 'night, #perl6
22:11 bbkr_ joined #perl6
22:19 Gesh joined #perl6
22:20 dalek tablets: 543c688 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
22:20 dalek tablets: better explanation of crosswith method and examples to pair syntaxes
22:20 dalek tablets: review: https://github.com/perl6/tablets/commit/543c688ecc
22:23 lichtkind TimToady: on which precedence level is exp ?
22:24 araujo joined #perl6
22:24 lichtkind nah its a method :)
22:28 lichtkind hasnt E died long time ago?
22:30 dalek specs: 4d695df | (Herbert Breunung)++ | S03-operators.pod (2 files):
22:30 dalek specs: didnt E died some time ago?
22:30 dalek specs: review: https://github.com/perl6/specs/commit/4d695dff9d
22:31 dalek specs: d3959f0 | (Herbert Breunung)++ | S03-operators.pod~:
22:31 dalek specs: removed backup file
22:31 dalek specs: review: https://github.com/perl6/specs/commit/d3959f0404
22:38 dorlamm joined #perl6
22:39 dalek tablets: d13d0de | (Herbert Breunung)++ | docs/appendix-a-index.txt:
22:39 dalek tablets: format more snippets with ``
22:39 dalek tablets: review: https://github.com/perl6/tablets/commit/d13d0de108
22:44 havenn joined #perl6
22:56 pun joined #perl6
23:02 dalek tablets: f64aa8d | (Herbert Breunung)++ | docs/appendix- (2 files):
23:02 dalek tablets: better explanation of the spaceship operator
23:02 dalek tablets: review: https://github.com/perl6/tablets/commit/f64aa8d9ab
23:07 spider-mario hm, in rakudo, USAGE generation doesn’t seem to play well with perl6’s command-line arguments
23:08 spider-mario for example, $ perl6 --stagestats script-that-expects-an-argument.pl
23:08 spider-mario
23:08 spider-mario Usage:
23:08 spider-mario --stagestats <nb>
23:09 japhb o/
23:09 phenny japhb: 20 Apr 18:41Z <fglock_> tell japhb This seems to work (I can't see colors in this terminal): $ node perlito5.js -Isrc5/lib rc-forest-fire
23:09 phenny japhb: 08:20Z <fglock> tell japhb I've implemented "next"; perl 0.4s; p5-in-js 1.5s (I think I can see gc pauses)
23:09 phenny japhb: 08:43Z <fglock> tell japhb v8 shell has almost the same speed as perl5 (just 10% slower); I think the pauses are a node.js problem
23:10 japhb phenny, tell fglock Oooh, good news!  Erm, unfortunately perlito5.js doesn't seem to be running under node.js anymore.  I get "\nnode.js:63\n    throw e;\n    ^\n"
23:10 phenny japhb: I'll pass that on when fglock is around.
23:10 japhb Now I have to figure out how to get d8 on here ....
23:12 sorear Who is d8?
23:12 dalek tablets: dc8b048 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
23:12 dalek tablets: adding first callframe methods
23:12 dalek tablets: review: https://github.com/perl6/tablets/commit/dc8b048e0b
23:12 lichtkind japhb: o/
23:13 japhb sorear, apparently a REPL or shell for the V8 JS engine ...?
23:14 japhb sorear, It's referred to in one of the Perlito readme's, and I think it's what fglock was talking about in his phenny messages to me.
23:17 dalek tablets: 8b09ad2 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
23:17 dalek tablets: added 3 missing anchors
23:17 dalek tablets: review: https://github.com/perl6/tablets/commit/8b09ad2afb
23:18 libertyprime joined #perl6
23:23 simcop2387 joined #perl6
23:23 ggoebel__ joined #perl6
23:24 dalek tablets: e2c8f3f | (Herbert Breunung)++ | docs/appendix-a-index.txt:
23:24 dalek tablets: perl 5 terms are to be formated italic
23:24 dalek tablets: review: https://github.com/perl6/tablets/commit/e2c8f3f1ca
23:35 pernatiy joined #perl6
23:44 tokuhirom joined #perl6

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

Perl 6 | Reference Documentation | Rakudo