»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
00:01 dorlamm joined 00:09 betterworld left, betterworld joined 00:18 BigBear left 00:25 franek joined 00:28 fgomez left 00:29 dorlamm left 00:30 spider-mario left 00:35 thelazydeveloper left 00:38 franek left 00:39 OS7943 joined
pmichaud blogpost: pmthium.com/2012/04/22/oslo-perl-6-...-days-1-2/ 00:43
sleep time -- bbl
00:47 fgomez joined 00:48 fgomez left, fgomez joined 00:57 simcop2387 left 00:59 simcop2387 joined 01:13 nif joined 01:15 lichtkind_ joined 01:17 lichtkind left 01:18 lichtkind_ is now known as lichtkind 01:31 wolfman2000 joined 01:33 nif left 01:46 nif joined 01:47 Chillance left
colomon is very frustrated that ABC works fine under Niecza and two months old Rakudo, but not under current Rakudo. :( 01:47
inscrutable error message, too.
01:51 nif left
sorear I think Perl 6 is naturally disposed to inscrutable error messages </pessimism> 01:53
hmm. 01:54
why is this?
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:55
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
What is the error?
colomon Missing block 01:57
at lib/ABC/BrokenRhythm.pm:30
sub new-rhythm($note, $ticks) {
given $note {
when ABC::Note { ABC::Note.new($note.pitch, ABC::Duration.new(:$ticks), $note.is-tie); }
when ABC::Stem { ABC::Stem.new($note.notes.map({ new-rhythm($_, $ticks); })); } # line 30
}
}
sorear std: when ABC::Note { ... } 01:58
p6eval std 3d13d53: OUTPUT«===SORRY!===␤Function 'ABC::Note' needs parens to avoid gobbling block at /tmp/ELxvtUTFk6 line 1:␤------> when ABC::Note⏏ { ... }␤Missing block (apparently gobbled by 'ABC::Note') at /tmp/ELxvtUTFk6 line 1:␤------> when ABC::…
sorear rakudo: when fooo { ... }
p6eval rakudo 5d7626: OUTPUT«===SORRY!===␤Missing block␤at /tmp/s5QLdLOimU:1␤»
sorear looks like rakudo just needs $*BORG
colomon r: when Str { ... }
p6eval rakudo 5d7626: ( no output )
sorear rakudo somehow isn't seeing the predecl for ABC::Note, so it interprets it as a function call 01:59
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
sorear part of the reason I changed all the classes in the compiler to $-vars
02:00 nif joined
colomon now feels it was very wise to get ABC working on Niecza before updating his Rakudo. 02:01
sorear the best thing about rakudo's weird install system is that it makes downgrades easy 02:02
colomon true. :) 02:03
02:07 OS7943 left 02:10 tokuhirom joined 02:12 nif left
colomon It doesn't seem like the -I command line argument is working correctly, either? 02:12
02:14 harukomoto left
colomon Math::Prime doesn't work under new Rakudo, either. 02:15
sorear heh, you actually have a BrokenRhythm.pm 02:16
I was thinking "it's a non-working version of Rhythm.pm"
colomon no, it's for broken rhythms, like a dotted-eighth / sixteenth pair. :) 02:17
02:18 fgomez left
sorear
.oO( There's your problem! Your rhythm is broken! )
02:18
ens i 02:19
love
perl
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.
sorear That is a strange thing to say 02:21
02:21 fgomez joined
sorear Is that supposed to be a thank-you note? 02:21
An affirmation of piety?
Something else?
colomon enthusiasm, I think. 02:22
02:22 ens left, ens joined
ens thanks for all the good work. anyone who is actively working on perl6 has great respect from me. 02:23
(i've followed the dev mailing list for a few years now but it's out of my league)
we're on the brink of doing a re-code of all our company products, but they are looking to continue using perl5 02:24
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
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;
p6eval rakudo 5d7626: OUTPUT«1 2 2 4 16 256␤»
timotimo huh? 02:27
foo gets passed the complete list so far?
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
timotimo: yes
timotimo .o(also not as fast by far if you use rakudo) 02:29
ens ah the new switch case stuff
timotimo the given keyword? 02:30
ens i'm quite surprised that wasn't in perl5 tbh.
yeah
colomon given / when is so fun to use in perl 6. :) 02:34
02:37 tyatpi joined
colomon current rakudo is totally blowing the core algorithm for Math::Prime, too. :( 02:38
sorear where can I find Math::Prime? what does it do? 02:43
02:53 orafu left, orafu joined 03:04 nif joined 03:15 wolfman2000 left
colomon sorear: sorry, wasn't keeping an eye on #perl6 03:15
github.com/colomon/Math-Prime
it gives you an infinite list of primes (named "primes") and an is-prime sub. 03:16
it's not terribly sophisticated
it works fine in Niecza.
afk # sleep 03:21
03:41 daniel-s_ is now known as daniel-s 04:09 nif left 04:16 tyatpi left 04:21 fgomez left
dalek atures: 80c04aa | (John Gabriele)++ | template.html:
Make it a little easier for the eye to follow the first column.
04:21
04:25 xinming joined
ens colomon: can i pop the infinite list of primes? 04:29
04:38 JuanDaugherty joined 04:44 JuanDaugherty left
sorear ens: 20:21 < colomon> afk # sleep 04:44
04:44 sivoais left
sorear ens: that means "I am no longer available (I am sleeping)" 04:44
dalek blets: d267a15 | (Siddhant Saraf)++ | docs/appendix-d-delta.txt:
fix link to appendix-c
04:44 sivoais joined
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:45
04:48 kaare_ joined 04:53 fgomez joined
dalek blets: 8a9b154 | (Siddhant Saraf)++ | docs/tablet-1-language-design.txt:
[docs / tablet-1-language-design.txt] fix link to appendix-d-delta
04:56
04:58 fgomez left, fgomez joined
dalek blets: 71e6116 | (Siddhant Saraf)++ | docs/tablet-1-language-design.txt:
[tablet-1-language-design.txt] fix link to tablet-0-history
04:58
04:58 kmwallio joined 05:00 sisar joined 05:12 kmwallio left 05:33 xyklex joined 05:41 odoacre joined 05:51 sudokode left, mucker joined 05:52 sudokode joined 05:56 fglock joined, xyklex left 06:13 bacek joined 06:15 vlixes left, bacek left 06:16 bacek joined 06:31 GlitchMr joined
sisar gist.github.com/2462010 <--- why is modifying an array using pop possible? ain't @z just a read-only alias to @x? 06:31
06:33 fgomez left
sisar neither niecza nor rakudo complain at the pop statement 06:35
sorear no such thing as read-only arrays in any current impl 06:36
06:37 fgomez joined
sisar oh, so it is supposed to complain but NYI, right ? 06:38
sorear looking at the actual gist - I am not sure 06:39
@z is an *object*
objects are passed by reference, not by magical reference-adorned-with-a-const-flag 06:40
sisar huh ?
sorear this isn't C++
we probably don't have const correctness
sisar hmm
06:43 birdwindupbird joined 06:50 magichat joined 06:55 magichat left 07:27 cggoebel left 07:33 cggoebel joined 07:37 harukomoto joined 08:11 JimmyZ joined 08:12 mucker left
moritz \o 08:13
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
masak morgen, #perl6 08:19
pmichaud good morning, #perl6
tadzik good morning
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␤»
JimmyZ moring, it is allowed ?
jnthn Another day of hackathon \o/
JimmyZ *morning
jnthn JimmyZ: No, the morning is totally forbidden
fglock phenny: tell japhb I've implemented "next"; perl 0.4s; p5-in-js 1.5s (I think I can see gc pauses)
phenny fglock: I'll pass that on when japhb is around.
JimmyZ I meant the code outputs ... 08:21
pmichaud "read only" aspects of objects is still somewhat speculative
moritz sqlite3_stmt **ppStmt 08:22
fglock perlito5.js can now execute github.com/japhb/perl6-bench/blob/...orest-fire :) 08:25
pmichaud JimmyZ: there's a very long thread about "is readonly" from last summer:
www.nntp.perl.org/group/perl.perl6....34627.html
JimmyZ wow
sorear "readonly" can only be guaranteed to work for scalar variables. Anything else seems to cause more problems than it solves... 08:26
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++ # pmthium.com/2012/04/22/oslo-perl-6-...-days-1-2/
JimmyZ I'm curious why 'is readonly' is the default, not ''is copy'
masak sorear: oh!
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
masak sorear: thing is, when I look at '$str ~~ s///', it looks so obvious that it should return something truthy iff it matched.
JimmyZ hmm... I think I know ..
masak pmichaud: ss/from within a <(problem)>/program/ 08:29
pmichaud thanks.... fixing 08:30
.... I read $str ~~ s/// as indeed being a match against whatever s/// returns.... what else would it be?
similar to how $str ~~ m// is a smartmatch against the result of applying m// to $_
masak++ # blog post now fixed 08:32
masak then maybe it's just my Perl 5 intuitions playing tricks on me in this case.
jnthn++ # 6guts.wordpress.com/2012/04/21/hack...g-in-oslo/
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
but we've since eliminated that
krunen cold pizza breakfast \o/
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(...)
jnthn Jaffa cake breakfast \o/ 08:34
08:34 replore_ joined
sorear poor JaffaCake 08:36
jnthn om nom 08:37
sorear so that's a real food item huh. 08:38
jnthn oh yes :)
sorear it's not just Simon Marlow's nick.
jnthn Have them in he UK too
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).
..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
sergot o/ 08:40
sorear o/ sergot 08:41
masak sergocie! \o/
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.
sergot God morgen ;)
sorear -> sleep 08:44
dalek p/toqast: f3190cf | jonathan++ | src/QAST/Compiler.nqp:
Actually return register syntax from RegAlloc.
masak paulgraham.com/todo.html # pg++
08:44 machine1 left, NamelessTee joined
sjn pmichaud: sjn.hackeriet.no/perl6hack/hailston...profile.gz 08:52
08:52 machine1 joined 08:53 grondilu joined
grondilu p6: .say for map (sub { $^a + 2*$^b }).assuming(1), ^3; 08:53
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 …
..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…
..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.…
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…
..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…
..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.…
pmichaud sjn: downloaded -- setting up kcachegrind now
r: sub f { $^a + 2*$^b }; say &f.arity 08:55
p6eval rakudo 5d7626: OUTPUT«2␤»
pmichaud r: sub f { $^a + 2*$^b }; say &f.assuming(1).arity
p6eval rakudo 5d7626: OUTPUT«0␤»
pmichaud r: sub f { $^a + 2*$^b }; say &f.assuming(1).signature 08:56
p6eval rakudo 5d7626: OUTPUT«:(*@pos, *%named)␤»
jnthn .assuming always gives back something with the signature of a delegator at the moment. 08:57
08:59 dbr joined
sjn pmichaud: rosettacode.org/wiki/Hailstone_sequence#Perl_6 09:02
09:08 BigBear joined
dalek p/toqast: 3dce35c | jonathan++ | src/QAST/Compiler.nqp:
Sketch out QAST::BVal compilation.
09:08
pmichaud .assuming might want to be smarter than that. :-/ 09:20
jnthn pmichaud: Just maybe :) 09:21
pmichaud: It's a bit fiddly, but do-able.
Just means generating signatures on the fly.
But out of existing parameter objects, so it's not so bad. 09:22
Just needs enough beer, or something.
dalek pan style="color: #395be5">perl6-examples: b9095f2 | (Salve J. Nilsen)++ | best-of-rosettacode/balanced-brackets.pl:
Fix POD, fix bug in 3rd example
09:24
pan style="color: #395be5">perl6-examples: a835aa2 | (Salve J. Nilsen)++ | best-of-rosettacode/a (2 files):
Add initial versions of two more examples
tadzik sjn: github.com/rakudo/rakudo/commit/48dd7cd0afeca3
fglock gives rakudo beer
jnthn \o/ 09:25
dalek p/toqast: 2a08246 | jonathan++ | src/QAST/Compiler.nqp:
First crack at QAST::Stmt and QAST::Stmts.
09:27
pan style="color: #395be5">perl6-examples: f633530 | (Filip Sergot)++ | best-of-rosettacode/TODO:
[best-of-rosettacode/README] upgrade
09:28
sergot s/README/TODO/ ...
sjn tadzik: nice! :) 09:30
moritz r: enum A < b c d >; say A(2) 09:34
p6eval rakudo a8f855: OUTPUT«d␤»
masak \o/
r: enum Weekday <_ Monday Tuesday Wednesday Thursday Friday Saturday Sunday>; say Weekday(4) 09:35
p6eval rakudo a8f855: OUTPUT«Thursday␤»
tadzik niice
dalek pan style="color: #395be5">perl6-examples: 677edbd | (Filip Sergot)++ | best-of-rosettacode/24-game.pl:
best-of-rosettacode/24-game.pl
09:36
jnthn masak: _ at the start? :P 09:37
Just :Monday(1)
oh, but not in <...>
09:39 grondilu left
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␤␤»
frettled goodie
jnthn hm :) 09:43
I think masak might be about to...
frettled r: enum Weekday <_ foo bar zot>; say Weekday(x)
p6eval rakudo a8f855: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&x' called (line 1)␤»
frettled LTA :)
tadzik well, what did you expect?
jnthn The above is fine, the _ one is LTA.
frettled yup 09:44
tadzik right
09:45 fglock left
masak p6: my %h = foo => 5; %h<foo> //= (say "OH NOES"; 42) 09:46
p6eval rakudo a8f855: OUTPUT«OH NOES␤»
..pugs: OUTPUT«*** ␤ Unexpected ";"␤ expecting term postfix, operator, ":", "," or ")"␤ at /tmp/IjQHTOywbd line 1, column 45␤»
..niecza v16-23-gaa61ed5: ( no output )
masak niecza++ rakudo--
jnthn So patch it. 09:47
dalek pan style="color: #395be5">perl6-examples: a668858 | (Filip Sergot)++ | best-of-rosettacode/ (2 files):
TODO list is empty! :(
09:48
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)␤»
masak submits rakudobug
n: sub foo($x) {}␤&foo.wrap: sub ($x) {}
p6eval niecza v16-23-gaa61ed5: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/CfkC9FnfEV line 1:␤------> sub foo(⏏$x) {}␤␤Unhandled exception: Unable to resolve method wrap in class Sub␤ at /tmp/CfkC9FnfEV line 2 (mainline @ 2) ␤ at /home/p6eval/niecz…
masak huh :) 09:53
09:53 JimmyZ left, JimmyZ joined
infosophy First cut of Test::Junkie out -> github.com/gam/test-junkie 09:56
masak \o/ infosophy++
infosophy Please help me squash all non-idiomatic ugliness
jnthn
.oO( Idiomatic ugliness considered fine )
09:57
masak infosophy: looking good :)
09:58 krunen_ joined
masak huh! we have 'orelse'!? 09:58
jnthn msdn.microsoft.com/en-us/library/ea...71%29.aspx :) 10:01
10:02 krunen_ left
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%␤»
masak \o/
actually, there are no stalled tickets at all right now. 10:08
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%␤»
masak r: say (648 #`(new or open bugs) / 2750 #`(bugs submitted) * 100 #`(percent)).fmt("%5.2f%%") 10:10
p6eval rakudo a8f855: OUTPUT«23.56%␤»
masak hehehe.
23.56% chance of a bug being fixed in general. 28.71% chance of a masakbug being fixed. 10:11
conclusion: route your bug reports through me, and they have a higher chance of being fixed. :P
(and it's statistically significant!)
moritz r: my @a = <b c>; say (:@a[0]).perl 10:13
p6eval rakudo 48dd7c: OUTPUT«"a" => ["b", "c"]␤»
masak niice.
moritz it seems like it ignores the indexing
I wanted it to construct a => 'b'
masak moritz: no, precedence.
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))␤»
sisar panda build fails: gist.github.com/2463273 10:16
moritz sisar: that usually (but not quite always) means that something is messed up in the install or ~/.perl6/ dir 10:19
I usually do an rm -rf install/; make clean; cd nqp; git clean -xdf; rm -rf ~/.perl6/lib/ # from inside the rakudo dir
and then generate everything anew
sisar tries 10:20
10:21 Chillance joined, fgomez left
moritz oh, and you should have a very new rakudo 10:21
so git pull before anything else
sisar ok
arnsholt jnthn++ # Clever man 10:25
sisar aye 10:27
moritz has written 228 lines for MiniDBD::SQLite, and can't test it until CArray[OpaquePointer] is implemented :-)
dalek p/toqast: 6b2e5b2 | jonathan++ | src/QAST/Compiler.nqp:
Start to sketch out QAST::Block handling; loads more to do, of course.
10:29
p/toqast: 17cc5c8 | jonathan++ | src/QAST/Compiler.nqp:
Various fixes to QAST::Block.new(QAST::IVal.new(:value(42))) style things now actually compile to runnable code.
10:34 sisar left 10:37 lestrrat left
tadzik silug: oh, oh. I'm aware of that, and unfortunately, I'm not sure how to fix it :) 10:38
oh, sisar ^
dang
10:38 lestrrat joined 10:40 replore_ left
moritz arnsholt: how can I pass an unsigned long int to a C function? 10:40
hm, Int might work, our SQL statements shouldn't be too long :-)
10:42 thelazydeveloper joined 10:45 localhost left 10:47 localhost joined 10:50 Kid_ joined 10:51 sporous joined, birdwindupbird left
Kid_ hi all 10:52
lol
10:54 Kid_ left
dalek p/toqast: 4aed1c0 | jonathan++ | src/QAST/Compiler.nqp:
Only use ucs4 for regex engine internal strings; encode normal ones as PAST::Compiler does.
10:54
10:56 Kid_ joined
JimmyZ Kid_: aloha 11:01
seen Kid_ 11:04
dalek p/toqast: 95641b4 | jonathan++ | t/qast/qast.t:
Start a test file for QAST.
aloha Kid_ was last seen in #perl6 7 mins 43 seconds ago joining the channel.
11:10 bjarneh left 11:26 replore joined 11:32 Teratogen left
dalek p/toqast: 2e28049 | jonathan++ | / (3 files):
Start to sketch out infrastructure for halding operations.
11:36
jnthn ...*handling!
11:37 BigBear left 11:42 sergot left, zhutingting joined, PacoAir joined 11:43 sergot joined
geekosaur Haldane operations? 11:44
11:51 ZAZEN_compute joined 11:59 Kid_ left
moritz github.com/moritz/dojo-roman 12:08
dalek p/toqast: e2aea7e | jonathan++ | src/QAST/Operations.nqp:
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
p/toqast: 2e32225 | jonathan++ | t/qast/qast.t:
Add a test for the add_i operation on two QAST::IVals.
infosophy coding kata video (using ruby with the roman numerals kata) is at vimeo.com/15104374 12:21
kata starts around 1:55
12:34 replore left 12:38 sisar joined 12:53 fglock joined 12:57 birdwindupbird joined
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:02 bbkr left 13:03 spider-mario joined
moritz ok, no prepared statements for mysql today 13:10
masak :/
moritz it requires filling out memebers of the MYSQL_BIND structure, which I won't replicated with CStruct
it has ~20 memebers or so
sisar moritz, clean build of rakudo does not help in building panda, same error. sigh. 13:11
tadzik sisar: I'm aware of that :/ 13:12
sisar: the workaround is that, after all the deps are installed, do PERL6LIB=lib perl6 bin/panda install panda
it'll fetch the one from git, not from current directory, but it'd work
sorry for that, but I have absolutely no idea what's going on there :) 13:15
the bright side is we now precompile everything installed with panda, which makes everything roughly 2x faster
sisar tadzik, also, at least panda issue #13 has now a more informative error message :) 13:16
tadzik sisar: I'll probably close this one in like 10 minutes :)
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
tadzik moritz++ for debugging help 13:17
sisar yes, moritz++
13:21 bbkr left 13:30 whiteknight joined
tadzik sisar: yep, github.com/rakudo/rakudo/commit/19370a16183 :) 13:32
sisar :) tadzik++ 13:35
tadzik nah, bootstrap's still broken for some reason 13:36
sisar yeah, but you got rid of the longstanding warning... 13:37
tadzik aye
sisar you closing the issue or should I ?
tadzik I've already closed it, I think 13:38
sisar :)
13:38 bbkr joined 13:43 Trashlord left
tadzik sisar: bootstrap should be fixed too now 13:44
sisar wow. i'll build panda in a min...
13:45 lestrrat left 13:47 Khisanth left, mucker joined, lestrrat joined 13:48 Trashlord joined
JimmyZ delak? 13:53
13:55 zhutingting left 13:57 sergot left 13:59 sergot joined 14:00 Khisanth joined 14:03 sergot left
sisar tadzik, gist.github.com/2464247 . I started with a completely fresh clone of the panda repo. 14:03
tadzik argh, wtf
14:04 spider-mario left
tadzik did you clean ~/.panda before? 14:04
sisar oh, no i did not. i'll do that now...
14:06 kaare_ left, cggoebel left 14:07 cggoebel joined
tadzik hugme: add gam to perl6 14:07
hugme tadzik: sorry, you don't have permissions to change 'perl6'
tadzik dang
sisar tadzik, panda built successfully! yay! 14:09
tadzik \o/
sisar t/panda/fetcher.t .... fatal: repository 't/' does not exist <--- when the script tests panda 14:10
tadzik yeah, there's an issue for that 14:11
this is expected, it comes from git and I know of no cross-platform way to silence it
sisar well, anyways, panda works. tadzik++
it just looks like that more robust error handling is required when building panda 14:12
sisar afk 14:13
14:14 spider-mario joined 14:18 tokuhirom left 14:30 geistteufel left
dalek ast: a45e1b2 | (Geir Amdal)++ | S16-filehandles/filestat.t:
tests for IO filehandle stat times (changed/modified/accessed)
14:40
ast: 04cb7bc | moritz++ | S16-filehandles/filestat.t:
Merge pull request #18 from gam/master

tests for IO filehandle stat times (changed/modified/accessed)
mucker is there an operator like $foo.>> in perl6 ? 14:42
moritz what do you want to achieve?
mucker well I see it all over in fglocks perlito6/src6/Perl5/Emitter.pm code 14:43
Just want to know if its a core operator in perl6 14:44
JimmyZ nom: ('hello', '#perl 6').>>.say; 14:46
p6eval rakudo 19370a: OUTPUT«===SORRY!===␤Confused␤at /tmp/jkxLYPogxh:1␤»
JimmyZ bug
mucker github.com/themucker/Perlito/blob/...Emitter.pm
line 64
JimmyZ nom: ('hello', '#perl 6')>>.say;
p6eval rakudo 19370a: OUTPUT«hello␤#perl 6␤»
mucker what does it do JimmyZ ? 14:47
moritz kall a method on each element of the list/parcel
s/k/c/
14:48 geistteufel joined
mucker kall is phonetically unambiguous :) 14:49
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:50
dalek kudo/nom: a527e09 | moritz++ | t/spectest.data:
run new filestat.t test file
14:52
kudo/nom: 80f140f | moritz++ | src/core/Array.pm:
use native int iterator variable in Array.REIFY
pmichaud a parcel is a representation of a syntactic construct 14:53
i.e., (1, 2, @a, $b) is a parcel
the parcel never changes -- it always reflects what was in the program
masak JimmyZ: yes, but don't combine >> and side effects :)
pmichaud a list is a mutable sequence of elements
i.e., one can push, pop, shift, unshift, etc on a list 14:54
mucker pmichaud: by exposing parcel as a separate entity, what is the gain ? 14:55
14:56 JimmyZ left
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:57
mucker Ah, ok. 14:58
pmichaud also, parcels are very important when dealing with argument binding and the like
i.e., where parcels become important is when binding to a signature
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
14:59 plutoid joined
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 :)
mucker :) 15:02
mucker 's doubt clarified
pmichaud currently the best place to see what Parcels are used for is S06 15:05
masak "He used the compiler's *self-compilation speed* as a measure of the compiler's quality." -- www.ics.uci.edu/~franz/Site/pubs-pdf/BC03.pdf "Oberon -- The Overlooked Jewel" 15:11
15:11 pmurias joined
pmurias fglock: hi 15:11
dalek p/toqast: 814d395 | jonathan++ | src/QAST/Compiler.nqp:
Fix typo.
15:12
p/toqast: 8475b80 | jonathan++ | t/qast/qast.t:
Test ops within ops.
15:15 uvtc joined
uvtc tadzik, hi 15:15
tadzik hey
oh, the email
uvtc What do you think of adding a "docs" badge to modules.perl6.org?
tadzik the badge. Right
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 plutoid left
tadzik that has some nasty security issues though 15:16
uvtc tadzik, I think at some point, either modules.perl6.org or some other site should extract and host module's Pod docs. 15:17
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:18
(Like search.cpan.org) 15:19
moritz agreed. "Just" needs somebody doing it.
tadzik :)
uvtc tadzik, what are the possible nasty security issues? 15:20
tadzik uvtc: well, extracting Pod consists of running perl6 --doc File.pm
and that, by spec, runs all the phasers; BEGIN{}, INIT{} etc
one could put some mailicious code in there
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.
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
15:22 kaare_ joined
timotimo so it's not terrible. it's also not as good as what cpan has. 15:23
tadzik "ambient"?
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.
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
timotimo that's true, but at least in python it's very easy to get to the docstring of a method, class or module ;)
tadzik still, the code gets run. If not in INIT, then in DOC INIT
timotimo not sure how it works in perl5. it doesn't yet in perl6 i believe.
15:24 xinming_ joined
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:24
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
15:25 erkan left
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, erkan left, erkan joined
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:25 geistteufel left
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:28 xinming left
tadzik could somebody add 'gam' to perl6/ecosystem? 15:28
15:29 geistteufel joined
moritz tadzik: he already has commit access 15:29
tadzik oh, ok
pmichaud r: sub xyz(:foo(@f)) { ... }; say &xyz.signature.perl 15:30
p6eval rakudo 80f140: OUTPUT«:(:foo(@f))␤»
pmichaud r: sub xyz(@foo) { ... }; say &xyz.signature.perl 15:31
p6eval rakudo 80f140: OUTPUT«:(@foo)␤»
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.
tadzik that's a must, imho
it's just a bit hard to do it safely and correctly with PErl 6
masak p6: say Inf.Int; say NaN.Int
pmichaud ^^ another regression... will file rakudobug
p6eval pugs: OUTPUT«1797693134862315907729305190789024733617976978942306572734300811577326758055009631327084773224075360211201138798713933576587897688144166224928474306394741243777678934248654852763022196012460941194530829520850057688381506823424628814739131105408272371633505106845862982399472… 15:32
..niecza v16-23-gaa61ed5: OUTPUT«Inf␤NaN␤»
..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␤␤»
masak rt.perl.org/rt3/Ticket/Display.html?id=61602
dalek ast: 07e31a8 | moritz++ | S12-methods/accessors.t:
test contextualization of %.foo style calls (RT #112236)
15:33
masak updates rt.perl.org/rt3/Ticket/Display.html?id=61602 since the behavior has now changed
dalek kudo/nom: f649408 | moritz++ | t/spectest.data:
run new accessors test file
15:34
masak ==> plane 15:35
jnthn r: masak ==> plane
p6eval rakudo 80f140: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at line 1, near " plane"␤»
15:36 icwiener joined
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.
spider-mario (did you know about git-bisect? do you use it?)
15:39 zhutingting joined
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.
moritz no, that can be done much easier 15:41
ack '^=\w' is a good approximation
timotimo make the package uploader extract the pod docs as part of the upload sequence on their own machine?
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?
timotimo oh, in that case that's a bit more complicated
moritz but at some point, we really want releases of modules 15:43
and when that's the case, we might as well have uploads
dalek ast: 2ffae45 | moritz++ | S03-operators/short-circuit.t:
RT #90158, ||= on an array
pmichaud or at the least, have the maintainers periodically generate files into the repo as part of their "release" 15:44
but yes, I agree module releases are key
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.
certainly seems saner than pull directly from the repo
dalek pan style="color: #395be5">perl6-examples: d1be5ad | (Jan Ingvoldstad)++ | cookbook/01strings/01-00introduction.pl:
Cleanup, mostly trailing whitespace
15:47
pan style="color: #395be5">perl6-examples: ad1054a | (Jan Ingvoldstad)++ | best-of-rosettacode/ (6 files):
Merge branch 'master' of github.com:perl6/perl6-examples
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 ast: a677cbb | moritz++ | S14-roles/mixin.t:
RT #101022, mixing a role into True
15:48 Psyche^ joined
timotimo yes, i was suggesting to generate a secure subset of perl6 that only contains maybe signatures, pod comments and basic class structure? 15:48
instead of html
that also sounds like a hack, though :| 15:49
15:49 tyatpi joined
moritz well, you need to be able to run code at BEGIN time to export all the symbols you need 15:49
and without those symbols you can't parse Perl 6
pmurias how does cpan testers handle the security issues?
moritz they trust. 15:50
frettled And have been very lucky.
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.
moritz most automated cpan smokers run on separate VMs anyway
or at least in a chroot 15:51
15:52 immortal joined, immortal left, immortal joined, Patterner left, Psyche^ is now known as Patterner
uvtc pmurias, for example, one might put api docs into their modules, but also include a docs/tutorial.html in their project. 15:53
15:54 erkan left
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:54
pmurias it seems sensible
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:55
pmurias encouraging .html rather then .pod doesn't seem a good idea 15:56
dalek ast: 2f2567f | moritz++ | S06-signature/optional.t:
RT #79642, optional-but-not-bound hash is just a normal, empty Hash
pmurias compare the docs of module on npmjs.org to metacpan.org
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.
dalek p/toqast: 2d62455 | jonathan++ | src/QAST/Operations.nqp:
Check argument counts to nqp ops.
frettled and if converting to HTML is easy, that's hardly any hardship 15:59
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:00
frettled, Oh, except then that won't end up on github... 16:01
pmurias it seems ok for modules.perl6.org 16:02
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:03
dalek ast: e7f5ef3 | moritz++ | S02-literals/radix.t:
RT #107756, :10() form needs a string as argument, not a number
16:05
timotimo if mp6o io pull branch for the code, why not ce ^H? 16:06
lke github pages?
16:06 sirhc left
pmurias timotimo: ? 16:06
moritz can't parse that either
uvtc timotimo, I see that "mp6o" == modules.perl6.org, but the rest is fuzzy. 16:07
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
... perl6 --doc 01-00introduction.pl
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).
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. (?)
moritz frettled: tadzik++ today patched rakudo not to run the code wwhen --doc is given on the command line
uvtc: that's a good place to start, IMHO
uvtc Which is preferred in the Perl world: "doc" dir or "docs" dir? 16:10
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
pmurias uvtc: you could support both ;) 16:12
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
timotimo sorry, firefox went berserk and my x server decided to discard half my keystrokes
what i was trying to say was:
pmurias uvtc: in the perl5 world the docs are usually stored in Foo::Manual::*
moritz uvtc: it's not running mainline code, but still BEGIN code
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.
frettled moritz: ISTR that this is an issue with perldoc for Perl 5 as well
pmurias moritz: isn't the code on module.perl6.org considered "trusted"? ;)
moritz timotimo: IMHO branches are for stuff that are meant to diverge. Documentation is meant to stay in sync with the code
pmurias: yes, "trusted" :-) 16:15
timotimo yes, that came to me while i was waiting for my computer to react again
moritz that's a good way of phrasing it
frettled It has the huge benefit that we sort of know who committed what and when. 16:16
dalek ast: ce0ef21 | moritz++ | S12-methods/accessors.t:
RT #78678, inheritance trees with same-named attributes and accessors in both parent and child
16:17
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
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.
frettled …I suppose it could have put them in blocks…
timotimo: oh, that's lovely.
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
and forgiveness > permission
:-)
uvtc moritz, How could you check if a .pod file contained only Pod (documentation), and not any code?
pmurias uvtc: Foo::Manual::Tutorial seems better
to me at least
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.
timotimo: hee-hee
uvtc pmurias, Why mix your manual in with your modules? Namespaces are for keeping names from clashing...
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
pmurias uvtc: yes
uvtc: you do not want all your tutorial.pod files to clash ;) 16:21
uvtc moritz, Ah, github.com/perl6/modules.perl6.org...ct-list.pl is written in Perl 5, not Perl 6.
dalek ast: 2f0ccea | moritz++ | S02-magicals/progname.t:
unfudge passing test
16:22
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.
moritz uvtc: but we could just do it on another server, and rsync it over
16:25 xinming_ is now known as xinming
dalek kudo/nom: dfea6b3 | moritz++ | tools/autounfudge.pl:
fix PERL6LIB handling in autounfudge.pl
16:25
uvtc moritz, "Shut down all services except basic life-support, we're going to build Rakudo..." 16:26
;) 16:27
moritz :-)
frettled moritz: you were right, tadzik++ did fix it enough to work for my case. Yay
moritz frettled: \o/ 16:28
16:30 mucker left 16:31 noam_ left, noam_ joined
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)␤»
frettled I'm very nearly employing TDD for the docs ;) 16:34
16:35 tyatpi left 16:36 sergot joined 16:37 birdwindupbird left 16:38 mucker joined
dalek p/toqast: 37cbc8f | jonathan++ | src/QAST/ (2 files):
Start getting the coercion infrastructure in place; it complains about the (many) cases it doesn't know.
16:42
ast: 1858f90 | moritz++ | S03-operators/context.t:
RT #76320, %$h coercion syntax
16:43 Moukeddar joined, Moukeddar left
moritz down to 73 testneeded tickets 16:43
jnthn \o/ 16:45
16:46 s1n left
tadzik is dinner in 15 minutes? 16:46
I may happen to be a bit late-ish
moritz tadzik: we're also a bit late
tadzik cool 16:47
so what's your ETA?
jnthn We're plotting to leave here in 15-20 mins 16:48
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?
moritz uvtc: perlpunks.de/paste/show/4f9436fb.98e.2f9 16:51
frettled tadzik: we've got a table reserved for 19:30
uvtc moritz, thanks.
moritz uvtc: you're welcome
16:53 tyatpi joined 16:54 zhutingting left
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() { ... })␤»
moritz rakudo: my @t; for < a b > { @t.push( (sub { $OUTER::_ } ).() ) }; say @t.perl 16:55
p6eval rakudo f64940: OUTPUT«Array.new("a", "b")␤»
frettled Heard: "snacks on a plane" 16:56
17:00 sergot left 17:02 nif joined
jnthn -> nom 17:02
dalek blets: ec8258b | (Herbert Breunung)++ | docs/appendix-a-index.txt:
fixing 2 links
17:11
blets: 7fe58de | (Herbert Breunung)++ | docs/build-html.py:
update README and remove old python builder script, also updated www.perlfoundation.org/perl6/index...._6_tablets
17:13 raiph joined 17:17 s1n joined
dalek blets: 56467ee | (Herbert Breunung)++ | docs/appendix-a-index.txt:
optimized content and linking of increment and decrement ops
17:19
17:21 aindilis left
dalek blets: 379d151 | (Herbert Breunung)++ | README.md:
now reall updated readme
17:24
17:34 MayDaniel joined 17:46 MayDaniel left 17:49 s1n left 17:52 pmurias left 17:54 pmurias joined, mucker_ joined 17:56 nif left 17:57 mucker_ left 17:59 mucker_ joined, mucker_ left 18:01 mucker left, mucker_ joined, mucker_ left, mucker joined 18:03 jaffa4 joined 18:05 s1n joined
fglock hmm - nice article about compiler speed and simplicity - www.ics.uci.edu/~franz/Site/pubs-pdf/BC03.pdf 18:11
18:16 mucker left, mucker joined 18:25 mucker left 18:28 mucker joined 18:30 alvis`` joined 18:34 tadzik1 joined 18:35 szbalint_ joined, machine1 left, araujo_ joined 18:37 eiro left, araujo left, alvis` left, tadzik left, mucker left 18:38 eiro joined, mucker joined, mucker left, mucker joined 18:39 machine1 joined, DarthGandalf joined 18:40 FACEFOX left, FACEFOX-DOT-COM left
dalek blets: 2104da4 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
repair a link and format some code snippets properly
18:44
18:45 FACEFOX-DOT-COM joined
lichtkind jnthn: hai 18:46
raiph: prost
18:47 au left, fodas joined 18:49 fodas left 18:51 icwiener left, icwiener joined, birdwindupbird joined 18:52 FACEFOX joined 18:53 sadsad joined, snearch joined
sorear good * #perl6 18:55
colomon o/ 18:57
18:57 au joined 18:58 GlitchMr left
sorear o/ colomon 18:59
18:59 M_o_C joined 19:01 mucker left 19:02 mucker joined 19:03 sadsad left
raiph hi all 19:06
sorear Hello raiph
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
(from www.reddit.com/r/perl/comments/sm7c...p/c4f9kol)
(i provoked this by posting a p6 news summary on reddit) 19:10
19:17 revdiablo joined, revdiablo left, revdiablo joined 19:19 revdiablo left, revdiablo joined
fglock o/ 19:20
19:22 revdiablo left 19:23 revdiablo joined, sisar left
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:26
fglock: I could work on it as a part of my university course 19:27
fglock pmurias: it looks interesting, do you have some specific optimization in mind? 19:28
did you look at the optimizations that are already in place?
(today I've just made it a bit slower, by adding new control exceptions) 19:29
19:29 cggoebel left 19:30 cognominal_ left, cggoebel joined 19:31 cognominal joined
fglock in Perlito5::Javascript, some things we know the type/context at compile-time and this allows some shortcuts 19:35
19:46 tyatpi left 19:47 mucker left, sisar joined 19:50 NamelessTee left
masak home 20:07
\o/ 20:08
20:08 NamelessTee joined
fglock pmurias: it would be great if you could work on it as part of the course 20:08
sorear masak! 20:09
mathw masak: welcome home
dalek blets: a8732d2 | (Herbert Breunung)++ | README.md:
updated todo list
20:10
masak and I promised sjn to blog, so I'll do that now. 20:13
mathw yay
masak feels like the least I could do after this amazing weekend.
mathw it sounds like it was good
masak oh, it was.
mathw, you need to start coming to these things. we need you.
mathw 's flattery meter explodes 20:14
masak also, you need to get off your lazy ass and finish Form.pm :P 20:15
dalek blets: 85c9ec0 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
better explanation and links for err and // +minor fix
mathw lazy? hah
I'd quite like to take some time off and do some Perl 6 hacking 20:17
it'd be a nice change of pace
masak do it! 20:18
mathw I'm intending to when we get version 2 out the door at work
I need a break after that, definitely
release and a bit of time for the inevitable post-launch bugfixes
and then I'm having a week off
masak \o/ 20:20
sounds utterly apt.
mathw so there should be some Perl 6 in that
masak yes, there should :) 20:21
mathw :) 20:23
as for 'finish'
how do you 'finish'something?
I'll accept adding a few features:)
dalek blets: 19006bf | (John Gabriele)++ | README.md:
Tuned up wording in README regarding ways to contribute.
20:24
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:25
masak I know the feeling. 20:26
ens if only there were more hours in the day
mathw if only I could run my brain at full speed all day every day 20:27
uvtc `use More::Time`
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.
jnthn seems much better at doing this :) I should ask him how he does it.
mathw my $work is awesome, but it has squeezed everything
and I've also become increasingly committed to aikido in all its awesomeness 20:28
I've been thinking about giving up music lessons to make more room 20:29
dalek blets: 62abe0f | (John Gabriele)++ | README.md:
Oof. fixed my typo.
20:30
20:31 birdwindupbird left 20:32 uvtc left 20:34 M_o_C left 20:36 uvtc joined
uvtc moritz, I'm having trouble running modules.perl6.org's build-project-list.pl: 20:37
Can't locate object method "connect_timeout" via package "Mojo::IOLoop" at build-project-list.pl line 20
Have you seen that one before?
__sri connect_timeout got deprecated somewhen last year, it's a user agent attribute now 20:43
20:46 bruges_ joined
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?
uvtc __sri, thanks.
cj maybe I should /msg you instead, but my purple windows usually scroll off the side of my huge list. 20:48
sorear cj! \o/ 20:49
20:49 xinming_ joined
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
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 github.com/perl6/modules.perl6.org...ct-list.pl ?
20:49 sporous left
cj but facebook didn't make any effort to shorten it. 20:49
pmurias fglock: where can I find the current optimalisations?
cj www.facebook.com/photo.php?fbid=33...hoto_reply
20:49 sporous joined
cj fglock: !!! 20:49
can you folks tune that in? 20:50
uvtc (How do I link to a particular line number in a file at github?)
sorear unsupported browser :p
uvtc: they're anchors
__sri uvtc: my $ua = Mojo::UserAgent->new(connect_timeout => 10); 20:51
uvtc sorear, Ha. I see --- just click on them. Doh. Thanks. :)
Ack ... gotta go. __sri, thanks. Will try that. Bye 20:52
20:53 uvtc left, drbean_ joined, ggoebel__ joined 20:54 bip` joined, cggoebel left, geistteufel left, xinming left, bruges left, mdupont left, awwaiid left, drbean_ is now known as drbean
fglock reading github.com/audreyt/pugs/blob/maste.../PIL2JS.js - another implementation of perl6 in javascript 20:56
it's interesting to compare the workarounds 20:57
20:57 FACEFOX-DOT-COM left 20:58 machine1 left, FACEFOX left 21:00 takesako joined 21:01 icwiener left 21:02 FACEFOX-DOT-COM joined 21:04 kaare_ left 21:05 machine1 joined 21:06 mdupont joined 21:07 whiteknight left, FACEFOX joined 21:09 whiteknight joined 21:14 ggoebel__ left, ggoebel__ joined
[Coke] wonders why irssi keeps losing things off backscroll. bah. 21:17
masak lol, I blogged! \o/ strangelyconsistent.org/blog/reveng...-hackathon 21:18
sorear eh? I think it just has a limit
dalek blets: fc58508 | (Herbert Breunung)++ | README.md:
readme
21:21
blets: 9b35a0b | (Herbert Breunung)++ | README.md:
add CONTRIBUTORS
21:21 machine1 left
dalek blets: 2427143 | (Herbert Breunung)++ | README.md:
format CONTRIBUTORS
21:22
21:25 snearch left 21:29 machine1 joined 21:32 pmurias left, bip` is now known as geistteufel 21:33 libertyprime left 21:36 fglock left
masak lol, I blogged! \o/ strangelyconsistent.org/blog/speed-...-6-million 21:42
(yes, that's two blog posts in the space of one hour) 21:43
21:46 NamelessTee left
jaffa4 Macros should be replacements for templates I guess 21:46
21:49 jaffa4 left
masak well, in a very real sense, that's what macros are. templates. 21:50
you do an HTML template because you want to repeatedly insert HTML somewhere with only minor variations. 21:51
21:51 PacoAir left
masak you do a macro because you want to repeatedly insert code somewhere with only minor variations. 21:52
21:55 wooden joined, wooden left, wooden joined 21:59 cognominal_ joined 22:03 fgomez joined, cognominal left
masak 'night, #perl6 22:07
22:11 bbkr_ joined, bbkr left 22:19 Gesh joined
dalek blets: 543c688 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
better explanation of crosswith method and examples to pair syntaxes
22:20
22:23 sisar left
lichtkind TimToady: on which precedence level is exp ? 22:23
22:24 araujo_ left, araujo joined
lichtkind nah its a method :) 22:24
hasnt E died long time ago? 22:28
dalek ecs: 4d695df | (Herbert Breunung)++ | S03-operators.pod (2 files):
didnt E died some time ago?
22:30
ecs: d3959f0 | (Herbert Breunung)++ | S03-operators.pod~:
removed backup file
22:31
22:38 dorlamm joined
dalek blets: d13d0de | (Herbert Breunung)++ | docs/appendix-a-index.txt:
format more snippets with ``
22:39
22:44 havenn joined 22:53 dorlamm left 22:56 pun joined
dalek blets: f64aa8d | (Herbert Breunung)++ | docs/appendix- (2 files):
better explanation of the spaceship operator
23:01
23:05 Gesh left
spider-mario hm, in rakudo, USAGE generation doesn’t seem to play well with perl6’s command-line arguments 23:07
for example, $ perl6 --stagestats script-that-expects-an-argument.pl 23:08
Usage:
--stagestats <nb>
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
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)
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
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.
japhb Now I have to figure out how to get d8 on here ....
sorear Who is d8? 23:12
dalek blets: dc8b048 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
adding first callframe methods
lichtkind japhb: o/
japhb sorear, apparently a REPL or shell for the V8 JS engine ...? 23:13
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:14
dalek blets: 8b09ad2 | (Herbert Breunung)++ | docs/appendix-a-index.txt:
added 3 missing anchors
23:17
23:18 libertyprime joined 23:23 simcop2387 left, simcop2387 joined, ggoebel__ left, ggoebel__ joined
dalek blets: e2c8f3f | (Herbert Breunung)++ | docs/appendix-a-index.txt:
perl 5 terms are to be formated italic
23:24
23:25 lichtkind left 23:29 raiph left 23:33 havenn left 23:34 pernatiy left 23:35 pernatiy joined 23:44 tokuhirom joined 23:48 Chillance left