»ö« 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:02 Chillance left 00:13 leprevost joined
felher 'night, #perl6 00:14
00:16 skids joined
jnthn blug: 6guts.wordpress.com/2012/03/09/meta...kudo-news/ 00:20
And now, sleep &
00:40 pat_js left 00:41 benabik joined 00:53 lestrrat left 00:55 lestrrat joined 01:10 whiteknight joined
timotimo oh. do i understand correctly that nqp can be a tool to set rakudo atop non-parrot? 01:14
01:17 scott__ joined
[Coke] S32-num/exp.t - any reason the last block needs a ... ? mind if I convert it to .. so pugs can run it? 01:35
timotimo: eventually, yes
[Coke] invokes forgiveness. 01:36
01:41 lestrrat left 01:42 lestrrat joined 01:45 sivoais joined 01:48 elkng joined
elkng if one decided to learn perl should one start to learn perl6 and never to look at perl5 ? 01:56
araujo they are different , though yet perlish, languages
:)
elkng which one beginner should pick ? perl5 or perl6 ? 01:57
"Perl 6 is under-documented. Unfortunately that means that it's not easy to learn Perl 6, and that you have to have a profound interest in Perl 6 to actually find the motivation to learn it from the specification", thats it ? 01:59
timotimo it depends on what you're up to 02:07
do you need to become productive soon?
02:07 aindilis left
timotimo perl5 has a huge ecosystem of packages, perl6 doesn't yet (although with niecza you can apparently very easily use .net/mono libraries) 02:08
02:08 aindilis joined
timotimo i'd also guess, that the performance of perl5 is better than perl6s performance (niecza offering better performance than rakudo usually) 02:08
elkng no, want to know why are they different if they same language, and if they different why dont perl6 called differently but just changed version number
timotimo for one, you can put perl5 code into perl6 02:10
well, okay, that sounds like "you can put assembler code into C code, so C should instead be called 'assembler 2'", but meh 02:11
perl5 and pero6 apparently share lots of syntax and ideas
elkng perl5 -> perl6 something like C -> C++ ? 02:14
timotimo no, don't think so 02:18
what i meant with "put perl5 code into perl6" is that you can go "use v5;" or "use v6;" on a block-per-block level 02:19
araujo elkng, perl6 is a different language 02:20
but still perl
timotimo while perl6 features what i, as a never-used-perl5-person understand, is a dramatically improved system of method calls (signatures, multiple dispatch) and an actual object system with meta object stuff, perl5 has gotten many apparently very good object systems in the mean time, too (moose, moosex, moo, mo, m and )
02:21 slavik1 left
timotimo i invite anyone to call me out on any obvious mistakes/misinformation 02:22
[Coke] b: say 8204-7403 02:32
p6eval b 1b7dd1: OUTPUT«801␤»
[Coke] b: say 8204/21099
p6eval b 1b7dd1: OUTPUT«0.388833594009195␤»
dalek ast: b1c8167 | coke++ | / (17 files):
pugs fudge
02:34
gs.hs: 15e9360 | coke++ | t/spectest.data:
run fudged test
gs.hs: 9eb738a | coke++ | t/spectest.data:
run fudged tests

begin to document unrunnable tests.
02:42 araujo left
[Coke] masak: fudging pugs is getting harder and less fun. 02:48
02:50 colomon left 03:02 thou joined 03:07 thou left, orafu left, orafu joined 03:13 thou joined 03:15 whiteknight left 03:39 Khisanth left 03:49 thou left 03:55 Khisanth joined 03:56 leprevost left 03:58 leprevost joined
elkng there no #perl6-users ? 04:12
this loop "for 1..3 -> $x { }" better looks like: "for $x:1..3 {" 04:19
skids if you only have one variable going in, why not 'for 1..3 { .say }' ? 04:23
elkng isnt "$#b" better looking and faster to write than [email@hidden.address] 04:27
benabik +@b
nom: my @b = 1, 2, 3; say +@b
p6eval rakudo 4235df: OUTPUT«3␤»
elkng OUTPUT􏿽xAB3NL􏿽xBB ? 04:28
skids evalbot folds newlines.
elkng shouldnt there be "123"
skids no, you were asking for a short way to write .end. That's it. 04:29
benabik nom: my @b = <a b c>; say +@b
p6eval rakudo 4235df: OUTPUT«3␤»
benabik 3 is the length
04:32 leprevost left 05:02 skids left 05:14 thou joined 05:25 araujo joined, araujo left, araujo joined 05:44 sftp_ left 05:45 alc joined 05:46 sftp joined 05:49 NamelessTee joined 05:51 thou left
tadzik \o/ 06:00
moritz \o 06:18
phenny moritz: 08 Mar 22:54Z <jnthn> tell moritz fixed the issue that sunk your progress earlier
moritz tadzik is back. That means his travel can't have beeen delayed too long :-)
06:19 marmalade left
mathw is excited to be building Rakudo for the first time in aaaaages 06:41
06:44 jeffreykegler joined 06:47 MayDaniel joined 06:48 jeffreykegler left
moritz elkng: re $#b, that only works if you keep the array in an @-sigiled variable, which doesn't need to be the case 06:54
elkng: also in Perl 6 we need the last index only in rare cases explicitly, so it doesn't make sense to introduce extra syntax for it
we also don't change the sigils anymore. The variable is called @b, so whatever we do with it, there'll be a @ at the start 06:55
if you want to iterate over the indexes of an array, you'd just do for @b.keys { }
sorear goodish * #perl6 06:57
mathw oh hai 06:58
moritz \o sorearish
07:01 NamelessTee left
sorear o/ moritz 07:01
tadzik moritz: it was actually like 14 hours, it went through Czech Rep. 07:02
sorear elkng: right, there are no Perl 6 users. :p 07:03
(for sufficiently scottish definitions of users)
right now, everyone is involved in language design, so we have everyone crammed together
mathw is trying to figure out what's upsetting rakudo when it tries to compile the much-neglected Form 07:17
'missing block' is not the most useful error message when there appears to be a block right where the compiler's complaining 07:18
there doesn't seem to have been a syntactic alteration of given/when either, so it's not that 07:23
hmm
ahah 07:26
that's what's wrong 07:27
good
now how to fix it...
07:31 MayDaniel left
mathw is it possible to export an enum from a module? 07:33
moritz I dearly hope so 07:46
nom: enum A is export <a b c>; 07:47
p6eval rakudo 4235df: ( no output )
moritz nom: enum A <a b c > is export;
p6eval rakudo 4235df: OUTPUT«===SORRY!===␤Confused␤at /tmp/c7tlkI4Har:1␤»
mathw okay that was my stupid morning brain's fault 07:49
overcome that little hurdle
hurrah
now to investigate Cannot call 'trait_mod:<is>'; none of these signatures match: 07:50
fortunately there are only two calls to that in this file
so it should be easy enough to figure out which one's the problem :) 07:51
moritz mathw: are you using nested namespaces?
if you have something like 07:52
Foo.pm: module Foo; class A { };
and then you 'use Foo;'
you must now refer to A as Foo::A
unless you explicitly export A separately 07:53
mathw yes
this pleases me
moritz it might lead to the error you pasted, if you inherit from something that is referenced in the wrong way, or so
mathw \o/ form is now in to test run 07:54
moritz \o/ 07:55
push push push
mathw unsurprisingly
they don't all pass
looks like they're crashing
some of them
moritz commutes
mathw probably thetest files also don't conform to shiny new rakudo
nom: my @a = gather loop { take 1; last; }; say @a 08:04
p6eval rakudo 4235df: OUTPUT«Method 'eager' not found for invocant of class 'Integer'␤ in sub coro at src/gen/CORE.setting:4775␤ in method reify at src/gen/CORE.setting:4756␤ in method reify at src/gen/CORE.setting:4527␤ in method reify at src/gen/CORE.setting:4527␤ in method gimme at src…
mathw is this me or nom? 08:05
08:18 mj41 joined
moritz that' nom 08:24
mathw whew 08:25
also :(
moritz I think a block after the gather helps
nom: my @a = gather { loop { take 1; last; }}; say @a
p6eval rakudo 4235df: OUTPUT«Method 'eager' not found for invocant of class 'Integer'␤ in sub coro at src/gen/CORE.setting:4775␤ in method reify at src/gen/CORE.setting:4756␤ in method reify at src/gen/CORE.setting:4527␤ in method reify at src/gen/CORE.setting:4527␤ in method gimme at src…
moritz hm, no :/
mathw a workaround would be nice
moritz nom: my @a = gather { while True { take 1; last; }}; say @a
p6eval rakudo 4235df: OUTPUT«1␤»
mathw ah
something to do with loop
moritz aye 08:26
nom: my @a = gather { loop (1; 1; 1) { take 1; last; }}; say @a
p6eval rakudo 4235df: OUTPUT«1␤»
moritz with headless loop, to be exact
mathw well at least it's a quite limited problem
and I can easily incorporate that workaround
\o/ up to 14/19 in that file now 08:28
type check failed for return value, hmm
moritz might not have been enforced before
mathw quite probably
moritz or it's some Seq vs. List vs. Array business or so
mathw hah 08:30
the sub has returns Str on it
I took that off and had a look at what actually comes back
it's a Failure()
moritz oh
mathw "can only reduce with arity 2"
awesome 08:32
removing an old workaround for missing [] metaoperator in rakudo makes it all work
moritz \o/ 08:33
mathw although I'm not quite sure why @thing.reduce: &infix:<~> would fail where [~] @thing doesn't
\o/ 19/19
moritz that's certainly LTA
because &infix:<~> can accept two arguments 08:34
mathw: fwiw @thing.join is probably a lot more efficient
mathw noted
moritz though that's also something we should optimize at some point 08:35
mathw ideally they would be the same
08:35 am0c joined
mathw fortunately I have a test suite so I can change to .join and try it 08:35
although the other instance is [+
argh
[+]
morning fingers
moritz well, one has to be careful about such optimizations and user-defined operators
mathw yes you never know what people are actually going to reduce
'ideally' doesn't take much into account regarding the real world's terrifying genericity though :) 08:36
moritz but you can know at compile time if other ~ multis have been added
nom: say (1, 2, 3).recude: &infix:<~> 08:37
p6eval rakudo 4235df: OUTPUT«Method 'recude' not found for invocant of class 'Parcel'␤ in block <anon> at /tmp/ONZ51Slpks:1␤␤»
moritz nom: say (1, 2, 3).reduce: &infix:<~>
p6eval rakudo 4235df: OUTPUT«Failure.new(exception => X::AdHoc.new(payload => "can only reduce with arity 2"))␤»
moritz nom: say &infix:<~>.arity 08:38
p6eval rakudo 4235df: OUTPUT«1␤»
moritz nom: say &infix:<~>.count
p6eval rakudo 4235df: OUTPUT«1␤»
moritz ah, that's wrong
nom: say &infix:<~>(2, 3) 08:39
p6eval rakudo 4235df: OUTPUT«23␤»
moritz submits rakudobug
mathw no wonder reduce didn't like it
doing this updating just reminds me how awesome rakudo's got recently 08:41
moritz arity problem reported as [perl #111646] 08:42
nom: proto a(|$) {* }; multi a($) { }; multi a($, $) { }; say &a.arity 08:44
p6eval rakudo 4235df: OUTPUT«1␤»
moritz nom: proto a(|$) {* }; multi a($, $) { }; say &a.arity
p6eval rakudo 4235df: OUTPUT«1␤»
moritz nom: multi a($, $) { }; say &a.arity
p6eval rakudo 4235df: OUTPUT«1␤»
moritz eeks
nom: multi a($a, $b) { }; say &a.arity
p6eval rakudo 4235df: OUTPUT«1␤»
moritz nom: sub a($, $) { }; say &a.arity 08:47
p6eval rakudo 4235df: OUTPUT«2␤»
moritz nom: sub a($, $) { }; say &a.count
p6eval rakudo 4235df: OUTPUT«2␤»
moritz nom: sub a($, $) { }; say &a.WHAT
p6eval rakudo 4235df: OUTPUT«Sub()␤»
moritz nom: sub a($, $) { }; say &a.candidates
p6eval rakudo 4235df: OUTPUT«sub a(Any , Any ) { ... }␤»
moritz nom: sub a(|$) { }; say &a.arity 08:48
p6eval rakudo 4235df: OUTPUT«1␤»
moritz nom: sub a(|$) { }; say &a.count
p6eval rakudo 4235df: OUTPUT«1␤»
moritz that's the real problem
nom: sub a(:|$) { } 08:51
p6eval rakudo 4235df: OUTPUT«===SORRY!===␤Malformed parameter␤at /tmp/iCjWLmH9jg:1␤»
moritz nom: sub a(*@a) { }; say .count, .arity given &a 08:52
p6eval rakudo 4235df: OUTPUT«00␤»
mathw am I supposed to be able to assign an Int to a Num? 08:55
moritz no
mathw that explains why I can't then :)
moritz if you want something that can store Int or Num, type the container as Real
mathw on inspection it looks like the container should be an Int anyway
moritz or coerce explicitly if you want to store it as floating point always
mathw not sure why it was a num 08:56
moritz probably because of an old rakudobug
mathw actually it should be an unsigned int
\o/ 08:58
All tests successful.
Files=7, Tests=132, 63 wallclock secs ( 0.08 usr 0.02 sys + 60.08 cusr 1.57 csys = 61.75 CPU)
Result: PASS
thereare some uninitialized value warnings
but the semantics are all nice
and pushed 09:02
form now works again
fsvo 'works'
mathw -> breakfast, paid work etc.
(commence context shift to C# mode)
09:02 drbean left 09:04 birdwindupbird joined
mathw thanks for your help moritz++ 09:05
09:15 drbean joined
moritz you're welcome 09:20
09:21 Moukeddar joined
jnthn mornin' 09:35
We have Form working again?! :D 09:36
tadzik good morning
jnthn That goes into the next Star
09:42 birdwindupbird left
moritz lots of japanese perl6 activity on twitter 09:46
10:06 scott__ left 10:10 alc left
moritz str: loop(1; 2; 3) { } 10:10
star: loop(1; 2; 3) { } 10:11
p6eval star 2012.01: OUTPUT«===SORRY!===␤Confused at line 1, near "loop(1; 2;"␤»
moritz nom: loop(1; 2; 3) { }
p6eval rakudo 4235df: OUTPUT«===SORRY!===␤Confused␤at /tmp/9lHQGCtb2L:1␤»
jnthn nom: loop (1; 2; 3) { } 10:12
tadzik std: loop(1; 2; 3) {
p6eval rakudo 4235df: OUTPUT«(timeout)»
std 1ad3292: OUTPUT«===SORRY!===␤Word 'loop' interpreted as 'loop()' function call; please use whitespace around the parens at /tmp/QBeO3pt7Mo line 1:␤------> loop⏏(1; 2; 3) {␤Unexpected block in infix position (two terms in a row) at /tmp/QBeO3pt7Mo…
moritz thing is, we have a panic that says "whitespace required after loop" 10:13
but we never seem to get there
and locally that error loops. sigh. 10:17
or maybe not. I'm confused. 10:18
mathw jnthn: yes I realised no commits since 2010 was unacceptable, and the latest rakudo release was so exciting 10:21
tadzik mathw: btw, could you add a META.info to form? 10:23
the so-so-spec is here: github.com/perl6/ecosystem/blob/master/spec.pod 10:24
mathw tadzik: sure thing
tadzik this way we'd be able to install it properly with panda
tadzik schoolifies 10:26
masak "The name should not contain any elements indicating that the module is for Perl 6" # good. 10:27
mathw tadzik: done
masak nom: say "alive"; loop (1; 2) {} 10:38
p6eval rakudo 4235df: OUTPUT«===SORRY!===␤Missing block␤at /tmp/tDphhhHU6F:1␤»
masak nom: say "alive"; loop (1; 2; 3; 4) {}
p6eval rakudo 4235df: OUTPUT«===SORRY!===␤Missing block␤at /tmp/VIHCjr723V:1␤»
masak nom: say "alive"; loop (1; 2; 3) {}
p6eval rakudo 4235df: OUTPUT«(timeout)alive␤»
masak nom: loop (1; 2; 3) { last }; say "alive"
p6eval rakudo 4235df: OUTPUT«alive␤»
10:47 daxim joined
moritz leaf.dragonflybsd.org/mailarchive/k...00000.html 10:48
somebody submitted AMDbug :-)
masak nice. 10:51
that's pretty hard code.
core*
moritz aye
dalek kudo/nom: a8086d4 | moritz++ | src/core/ (2 files):
make error reporting more robust
10:52
10:59 Trashlord joined 11:08 lestrrat left 11:10 lestrrat joined
masak Linus considers it important not to break binary compatibility: lkml.org/lkml/2012/3/8/495 11:13
moritz "The *only* reason for an OS kernel existing in the first 11:18
place is to serve user-space. The kernel has no relevance on its own"
how very true
mathw A kernel with no userspace would be very dull indeed
moritz and we can make interesting analogies from there
about programming languages and users
masak yeah. 's why I posted it here. 11:23
jnthn Linus has a way of wording things. :) 11:30
Agree with his points, though. :)
mathw I can't get lkml.org to load :( 11:32
jnthn It took about 30 seconds or so here. 11:33
mathw maybe my browser's being too impatient
how strange 11:35
I can't load that URI, but I can browse around and find it via the site's facilities
11:36 pernatiy left
mathw and yes, Linus does have a way of wording things 11:37
one gets the impression that he's quite serious about binary compatibility
11:39 Moukeddar left 11:52 birdwindupbird joined, NamelessTee joined 11:57 tr-808 left 11:58 lumi__ left 12:09 lumi__ joined 12:19 domidumont left 12:20 mj41 left 12:24 domidumont joined 12:28 HarryS left 12:29 HarryS joined 12:34 mj41 joined 12:49 mj41 left 12:50 mj41 joined, NamelessTee left 12:57 bluescreen10 joined 13:07 mtk joined 13:14 birdwind1pbird joined 13:23 birdwindupbird left
[Coke] pugs: 3.Int.say 13:25
p6eval pugs b927740: OUTPUT«*** No such method in class Int: "&Int"␤ at /tmp/H4cNQEhFQh line 1, column 1 - line 2, column 1␤»
13:26 jaldhar left 13:29 lumi__ left
[Coke] au++ 13:30
I think it's neat that we're pretty close to 40% of the spec tests for pugs with about a 10 line patch so far. 13:31
(there's still more tests to pass with no more changes, also.) 13:32
13:33 lumi__ joined
masak r: sub foo { state $a = 5; state $b = 42; $a++; $b--; say "$a $b" }; foo; foo; foo 13:42
p6eval rakudo a8086d: OUTPUT«6 41␤7 40␤8 39␤»
masak r: sub foo { state ($a, $b) = 5, 42; $a++; $b--; say "$a $b" }; foo; foo; foo
p6eval rakudo a8086d: OUTPUT«6 41␤6 41␤6 41␤»
masak submits rakudobug 13:43
n: sub foo { state ($a, $b) = 5, 42; $a++; $b--; say "$a $b" }; foo; foo; foo
p6eval niecza v15-4-g1f35f89: OUTPUT«6 41␤7 40␤8 39␤»
[Coke] pugs: sub foo { state ($a, $b) = 5, 42; $a++; $b--; say "$a $b" }; foo; foo; foo 13:44
p6eval pugs b927740: OUTPUT«6 41␤6 41␤6 41␤»
[Coke] :(
masak submits pugsbug
[Coke] danke.
masak p: say "still no 'p' alias?" 13:45
moritz: the Society For One-Letter Implementation Consistency or on line 1.
are*
moritz masak: feel free to install the alias. It's easy. 13:46
masak tries with minimal clues
moritz masak: search for the word alias
inside evalbot.pl
masak found evalbot repo :) 13:47
shh, you're not supposed to help me :P
moritz :-)
masak it was easier to inspect the last commit.
jnthn Hmm
moritz I misunderstood; I thought you wanted minimal clues from me, ie more than none
jnthn I guess there must be something curious with the initializer parsing 13:48
oh, or handling somewhere
moritz suspects so too
jnthn Likely a relatively easy fix. 13:49
moritz writes a test 13:50
still no new HPMoR chapter :( 13:52
dalek albot: 54d4987 | (Carl Mäsak)++ | evalbot.pl:
[evalbot.pl] added a 'p' alias for Pugs
masak moritz: I'd like to do something nice for LessWrong, but I don't know what. 13:53
moritz evalbot control restart 13:55
13:55 p6eval left, p6eval joined, ChanServ sets mode: +v p6eval, Trashlord left
masak p: sub foo { state $a = 5; state $b = 42; $a++; $b--; say "$a $b" }; foo; foo; foo 13:56
p6eval pugs b927740: OUTPUT«6 41␤6 41␤6 41␤»
masak Pugs' bug is deeper than Rakudo's. :)
13:56 JimmyZ joined
[Coke] b: say 8204-9050 13:57
p6eval b 1b7dd1: OUTPUT«-846␤»
[Coke] b: say 8204/9050 13:58
p6eval b 1b7dd1: OUTPUT«0.906519337016575␤»
13:58 Trashlord joined 14:01 tokuhir__ joined
[Coke] ARGLEBARGLE 14:01
JimmyZ perl6: say pi 14:02
p6eval rakudo a8086d: OUTPUT«3.14159265358979␤»
..pugs b927740: OUTPUT«3.141592653589793␤»
..niecza v15-4-g1f35f89: OUTPUT«3.1415926535897931␤»
14:03 tarch joined
JimmyZ hmm, rakudo eats last two numbers ? 14:04
14:04 elkng left
dalek ast: 7bbd58b | moritz++ | S04-declarations/state.t:
state vars with list assignment initializers
14:05
PerlJam JimmyZ: Is that better or worse than getting the last number wrong like niecza? :)
moritz the answer is obviously "yes" :-) 14:06
JimmyZ r: say pi.FatRat
p6eval rakudo a8086d: OUTPUT«3.14159292035398␤»
PerlJam yuck 14:07
felher jnthn++ #interesting blog post :)
JimmyZ I'm sure it's a bug :)
moritz isn't
there isn't one obvious way to convert floating point numbers to rats or fatrats
and the spec is silent 14:08
r: say pi.FatRat(1e-18)
p6eval rakudo a8086d: OUTPUT«3.14159265358979␤»
moritz r: say pi.FatRat(1e-18).perl
p6eval rakudo a8086d: OUTPUT«FatRat.new(245850922, 78256779)␤»
moritz r: say pi.FatRat(1e-22).perl
p6eval rakudo a8086d: OUTPUT«FatRat.new(245850922, 78256779)␤»
14:08 thou joined
moritz r: say pi.FatRat(1e-30).perl 14:08
p6eval rakudo a8086d: OUTPUT«FatRat.new(245850922, 78256779)␤»
JimmyZ r: constant pi is export = 3.14159_26535_89793_23846_26433_83279_50288; say pi.Str 14:09
p6eval rakudo a8086d: OUTPUT«3.14159265358979␤»
JimmyZ this one should be a bug, perl S02
*per
PerlJam 20 digits of pi is more than enough ;)
[Coke] seen ingy?
aloha ingy was last seen in #parrot 14 days 19 hours ago joining the channel.
moritz JimmyZ: why exactly?
eeks 14:10
"Any rational literal that would overflow a Rat64 in the numerator is also stored as a string."
erm
eeks.
[Coke] moritz: is the title of RT # 111646 correct?
JimmyZ moritz: S02 says ' say pi.FatRat; # 3.14159265358979323846264338327950288' 14:11
moritz [Coke]: could easily be generalized
JimmyZ: you're right, it's NYI
[Coke] just seems like you said you wanted A, and it gave you... A.
14:11 jerome_ left
moritz [Coke]: updated the title, thanks 14:12
felher jnthn: interesting. The idea of building a string by gather-take is quite cool (your GPW slides) 14:18
PerlJam felher: gather/take is quite cool :)
felher PerlJam: it sure is :)
PerlJam: especially because take gathers to gather in the dynamic scope. I like that alot :) 14:20
PerlJam yep
14:29 skids joined
masak nom: constant seq = 1, 2 ... *; constant seq2 = seq[0, 2 ... *]; say "alive" 14:31
p6eval rakudo a8086d: OUTPUT«(timeout)»
masak Things: not perfect yet.
niecza: constant seq = 1, 2 ... *; constant seq2 = seq[0, 2 ... *]; say "alive" 14:32
p6eval niecza v15-4-g1f35f89: OUTPUT«alive␤»
masak niecza: constant seq = 1, 2 ... *; constant seq2 = seq[0, 2 ... *]; .say for seq2[ ^10 ]
p6eval niecza v15-4-g1f35f89: OUTPUT«Unhandled exception: System.NullReferenceException: Object reference not set to an instance of an object␤ at Niecza.Kernel.ToComposable (Niecza.STable arg, Niecza.STable cls) [0x00000] in <filename unknown>:0 ␤ at Niecza.Kernel.ApplyRoleToClass (Niecza.ST…
masak bwhahaha
masak submits nieczabug
felher really liked jnthn's Meta-Slides :)
masak felher: jnthn++ has a real knack for implementing stuff in Rakudo, and then making talks about awesome things the stuff can be used for. 14:34
felher masak: yeah, indeed :) 14:35
jnthn masak: Is that bug to do with constant per se?
fsergot o/
:)
14:35 betterworld left
jnthn masak: Or is it a general sequence-y issue? 14:36
14:39 slavik1 joined
masak nom: .say for (1, 2 ... *)[0, 2 ... *][^10] 14:40
p6eval rakudo a8086d: OUTPUT«(timeout)»
masak it's a general sequence-y issue.
jnthn phew
OK
masak :)
jnthn I mean, it sucks, but it being specific to constants woulda really sucked :) 14:41
masak :)
let me be clear. rakudo these days is frickin' awesome.
totally mindblowingly awesome.
when things like the above work, it'll be even more awesome, and I'll need to find new superlatives. 14:42
14:43 bluescreen10 left, PacoAir joined
moritz indexing is eager 14:47
it returns a Parcel, and Parcels are eager
masak oh! 14:48
so, feature, not bug.
so I basically need to &map and index individually. 14:49
moritz yes
masak nom: .say for (map { next if (++state $x) %% 2 }, (1, 2 ... *))[ ^10 ] 14:50
p6eval rakudo a8086d: OUTPUT«(timeout)»
masak hm.
nom: .say for (grep { ++state $x %% 2 }, (1, 2 ... *))[ ^10 ]
p6eval rakudo a8086d: OUTPUT«2␤4␤6␤8␤10␤12␤14␤16␤18␤20␤»
masak \o/
messed up the semantics, though :)
nom: .say for (grep { ++state $x % 2 }, (1, 2 ... *))[ ^10 ]
p6eval rakudo a8086d: OUTPUT«1␤3␤5␤7␤9␤11␤13␤15␤17␤19␤»
masak nom: .say for ([\*] 1 ... *)[^10] 14:51
p6eval rakudo a8086d: OUTPUT«1␤2␤6␤24␤120␤720␤5040␤40320␤362880␤3628800␤»
14:52 thou left
flussence nom: .say for 1 X. <sin cos> 14:53
p6eval rakudo a8086d: OUTPUT«===SORRY!===␤Confused␤at /tmp/zfeHFoPPeH:1␤»
flussence I wonder if there's a shorthand way to apply a bunch of methods that works... 14:54
moritz nom: .say for <sin cos>.map: { 1."$_"() }
p6eval rakudo a8086d: OUTPUT«0.841470984807897␤0.54030230586814␤»
masak nom: say 1.&$_ for &sin, &cos 14:55
p6eval rakudo a8086d: OUTPUT«0.841470984807897␤0.54030230586814␤»
jnthn nom: 1.$(all <sin cos tan>)().say
p6eval rakudo a8086d: OUTPUT«===SORRY!===␤Non-declarative sigil is missing its name␤at /tmp/C0HbuqXWHM:1␤»
jnthn aww
moritz nom: say 1.$_ for &sin, &cos
p6eval rakudo a8086d: OUTPUT«0.841470984807897␤0.54030230586814␤»
moritz no need for another & in there
masak ah, troo
jnthn std: 1.$(all <sin cos tan>)().say 14:56
p6eval std 1ad3292: OUTPUT«ok 00:01 110m␤»
jnthn Hmm. :)
[Coke] jnthn++
jnthn nom: say 1."&all(<sin cos tan>)"() 14:57
p6eval rakudo a8086d: OUTPUT«This type cannot unbox to a native string␤ in block <anon> at /tmp/obnSIcuTtJ:1␤␤»
jnthn hehe :)
masak you just tried to do a method call with a junction instead of a method :P 14:59
which... could've worked, I guess.
[Coke] one of the things AI've noticed trying to fudge pugs is that if there is an ok and a junction, i get tests back in the wrong order and/or too many tests.
14:59 bluescreen10 joined
[Coke] er, I! not AI. ahem. 14:59
masak call in the Turing police. 15:00
[Coke] I wonder if this means the tests are written incorrectly.
(as there is at least one file where there is a "jok" function to avoid that exact sort of thing.)
15:02 birdwind1pbird left 15:03 tokuhir__ left
moritz [Coke]: Test.pm functions aren't supposed to autothread 15:06
15:07 bluescreen10 left
masak then why is &jok needed? 15:08
15:08 colomon joined
moritz maybe it's a fossil 15:08
15:14 bluescreen10 joined 15:15 pernatiy joined
flussence
.oO( &joke )
15:25
15:29 colomon left 15:35 alester joined
masak decommutes 15:38
15:43 colomon joined 15:48 GlitchMr joined 15:49 Patterner left 15:50 Psyche^ joined, Psyche^ is now known as Patterner 15:54 bluescreen10 left 16:00 NamelessTee joined 16:03 wolfman2000 joined 16:10 bluescreen10 joined
jnthn beer & 16:11
16:11 MayDaniel joined 16:15 Trashlord left 16:19 betterworld joined, jerome_ joined 16:23 fsergot left
TimToady moritz: where did you ever get the idea that Parcels are eager? the whole *point* of Parcels is to be lazy 16:28
and the point of LoLs is to enable N-dimensional lists for subscripts, each of which can be lazy 16:29
16:31 JimmyZ left
moritz TimToady: in at least one of the listy spec iterations 16:34
TimToady I think there's some confusion somewhere; Parcels are constructed eagerly, but if you have a lazy list as a parcel, it's incorporated lazily 16:35
you never trigger an eager till something binds it that way 16:36
s/as a/as part of a/
(1,2,foo()) calls foo eagerly, but if foo returns a list, it's just a list in the parcel, not eager
16:37 betterworld left
TimToady 2,4,6 ... * is just a foo returning a lazy list that gets incorporated uneagerly into the list that is the subscript 16:37
16:38 kaare_ joined
TimToady I foresee that we'll need to be very careful to test that different implementations do not subtly introduce eager assumptions different from other implementations 16:40
it's very easy to mis-assume something should be eager because that's our heritage 16:41
and the assumption can be rather insidiously buried deeply in the guts of an implementation
PerlJam (test suites)++ 16:42
TimToady it can be a little hard to test, given that we allow mostly-lazy to work ahead in batches
but working ahead in an Inf-sized batch seems a bit suboptimal in this case :) 16:44
16:45 fsergot joined
[Coke] imagines an eager compiler as a little ocd. "wait, let me get all these elements /first/, and /then/ I can do what you want." 16:47
TimToady (Also, I'm not saying that we should never have eager subscripting, just that it's certainly inappropriate when we know we have an infinite subscript on an list of indeterminate size.)
16:48 betterworld joined
moritz well, one big problem with testability of laziness is that the spec isn't very explicit about how lazy stuff needs to be 16:49
PerlJam moritz: the default assumption should be maximally lazy I think :)
tadzik 'afternoon 16:50
TimToady moritz: it's hard to be more explicit than S02:2416
tadzik mathw: do you have access to perl6/ecosystem repo? 16:51
16:55 onahu joined
moritz TimToady: I meant more in general 16:56
do we spec that stuff is always as lazy as possible? 16:57
for example if S02:4668-4676 apply generally (stuff is allowed to be produced/processed in batches), it's nearly impossible to test 16:58
TimToady I just said that 17:00
dalek osystem: 16dcba1 | tadzik++ | / (2 files):
Add mathw++'s form, remove it from SHELTER
onahu Is there a Win32 package for Rakudo 2012.01 or 2012.02? I don't see a parrot-rakudo addon on sourceforge. 17:01
colomon maybe we need eval_doesnt_hang for Test.pm 17:02
moritz TimToady: did you? sorry, then I didn't understand you 17:05
TimToady: could you please try it again, with different words?
17:05 onahu left
moritz colomon: and require threads or signals for Test.pm? 17:05
colomon: doesn't sound very friendly to not-so-advanced compilers 17:06
colomon moritz: yeah, that's the tricky bit
moritz like, uhm, rakudo
colomon moritz: BTW:
TimToady: it can be a little hard to test, given that we allow mostly-lazy to work ahead in batches
[11:44am] TimToady: but working ahead in an Inf-sized batch seems a bit suboptimal in this case
(is what he meant by "just said that")
moritz oh 17:07
17:42 < TimToady> it can be a little hard to test, given that we allow mostly-lazy to work ahead in batches
that's the line I missed
I just think that "little hard" is an understatement
colomon It's not really very different from the (1..100000000000).pick test, is it? 17:08
moritz which is also very non-optimal 17:09
huh, we have both .pretty and .gist methods 17:10
[Coke] in case onahu comes back, I don't think anyone here is maintaining any perl6 resources on sourceforge. 17:11
and .Str. And .perl
moritz and .Stringy 17:12
I'm not sure if .Stringy is used correctly in rakudo
in many places we assume that we can unbox its return value as a native str 17:13
mathw tadzik: I do not. 17:15
17:19 fsergot left, onahu joined
[Coke] so that's.. 5 different ways to do /almost/ the same thing. Must be perl. ;) 17:19
moritz mathw: what's your github ID? 17:20
[Coke] wonders if mathw is pronounced like "matthew" 17:21
PerlJam moritz: looks like it's "mathw" :) 17:22
17:22 tarch left
moritz ah, well 17:22
hugme: add mathw to perl6
hugme hugs mathw. Welcome to the perl6 github organization
moritz mathw: now you have access to the ecosystem :-)
and... all the rest :-)
ever wanted to fix a typo in the spec? now you can
onahu Thanks, Coke. 17:24
mathw [Coke]: it is 17:25
cheers
I may still not be very active
but I'm going to at least try to keep Form up to date
17:30 Vlavv_ joined
[Coke] yays at the automagic spectestruns! 17:31
[Coke] wonders if there's a way to unlock his password for the ssh keyfile and have it stay active longer than a single use on feather. 17:32
17:33 daxim left 17:34 Vlavv` left
flussence [Coke]: there's a few different ways around that, depending on what you're doing over ssh 17:34
[Coke] git 17:35
flussence IIRC ssh-agent is supposed to handle key password persistence, and gpg-agent provides a superset of the functionality... 17:36
(I'm too lazy to set up either properly :)
17:39 wolfman2000 left 17:41 fsergot joined 17:44 mj41 left
PerlJam *sigh* The only thing that still really bothers me about rakudo is the execution speed. I wrote a simple script to parse some data and started it about 30 minutes ago. In the mean time I ported the script to Perl 5 and executed it and it ran in about 2 seconds. 17:47
The rakudo version is still runnning (in case that wasn't clear)
flussence sounds like a good candidate for --profile
TimToady rosettacode.org/wiki/Langton%27s_ant#Perl_6 is a fun program 17:51
17:52 onahu left
TimToady note that one runs about 19 times faster in niecza than rakudo... 17:52
afk &
PerlJam okay, the only *other* thing that still bugs me about rakudo is that I need to vivify parts of my multi-dimensional data structure manually. 17:56
:-)
moritz all of us had hoped that pmichaud++ would return and do autovivification, so that we don't have to
PerlJam okay, so Niecza took about 13 minutes to do execute my simple "parse lines and count stuff" script. I guess that means I should expect rakudo to take about 377 minutes 17:59
18:00 fglock joined
PerlJam kills the rakudo program 18:00
fglock inspects a dead rakudo 18:01
geekosaur wonders how much of that is rakudo's fault and how much is parrot's
18:05 thou joined 18:11 mj41 joined 18:13 bluescreen10 left 18:14 mucker joined, Chillance joined 18:16 fsergot left
[Coke] +# 03/09/2012 - rakudo++ ; niecza (96.24%); pugs (38.88%) 18:17
+"niecza", 20307, 1, 757, 1540, 22604, 23759
+"pugs" , 8205, 0, 3014, 1333, 12552, 23568
+"rakudo", 21099, 31, 626, 1888, 23478, 24026
mikemol looks at the langton's ant output, and suspects Rorschach would have been amused...
[Coke] PerlJam: does your script run in pugs? ;)
PerlJam doubtful :-) 18:18
actually ... I don't know how much regex stuff pugs supported, so ... mayube 18:19
er, maybe
[Coke] pugs is still pretty fast. 18:20
PerlJam oh, but some of the syntax changes since pugs was last updated would scuttle it
hold on a sec, I'll paste the entire program.
[Coke] perljam, ah, very likely
PerlJam gist.github.com/2007874 18:21
[Coke] speaking of rorshach, I need to re-read the watchmen. 18:22
*hurm*
PerlJam that little program was just for reading and parsing a 22meg file.
[Coke] *** No such method in class IO: "&lines" 18:23
ah wells. ;
;)
PerlJam I wonder if pugs supports the for =<> -> $line { ... } notation 18:24
does pugs run on feather?
I mean, can I get to an executable easily without having to build it myself 18:25
?
[Coke] PerlJam: you can borrow ~coke/sandbox/Pugs.hs/perl6 for a little while. 18:28
PerlJam hrm. I can run pugs from the command line, but it's different from coke-pugs 18:30
au PerlJam: it's from au-pugs
phenny au: 08 Mar 20:13Z <[Coke]> tell au that github.com/perl6/Pugs.hs/issues/6 is another one that might get us a large number of unrelated tests. Any pointers on where to look for the grammar of a sub name?
au $ ls -l /usr/bin/pugs 18:31
lrwxrwxrwx 1 root 31 Mar 9 19:30 /usr/bin/pugs -> /home/audreyt/Pugs.hs/Pugs/pugs*
GlitchMr perl6: note 2+2
au should be identical
p6eval rakudo a8086d, niecza v15-4-g1f35f89: OUTPUT«4␤»
..pugs b927740: OUTPUT«*** No such subroutine: "&note"␤ at /tmp/MG2ZtXcjeZ line 1, column 1 - line 2, column 1␤»
PerlJam au: I figured. The copyright notice on the repl for one says 2005-2012 and the other says 2005-2011 18:32
18:32 birdwindupbird joined
PerlJam anyway ... lunch & bbl 18:33
felher I like rosettacode.org/wiki/Langton%27s_ant#Perl_6 , but is there a reason its using 'gather for ... { take .... }' instead of 'do for ...'?' Matter of Taste? Some difference i don't see? 18:34
dalek gs.hs: 43d7ae3 | au++ | Pugs/src/Pugs/Lexer.hs:
* Fix issue #6 allowing dash in identifiers.
colomon \o/
flussence felher: gather-take is lazier, afaik. It avoids having to build up a giant list to pass to join 18:35
[Coke] au: ~~
nom: my $au; $au: ~~
p6eval rakudo a8086d: OUTPUT«===SORRY!===␤Confused␤at /tmp/jC0k2zVjJR:1␤»
[Coke] ok, good. ;)
18:36 zby_home_ joined
[Coke] au: pugs is now up to 8205 passing tests, 38.88% of rakudo's total. 18:36
felher flussence: ah, good point. Yes, that might be it :)
18:37 bluescreen10 joined
[Coke] OH! 18:37
I missed 43d7ae3 in the scroll! au++
au [Coke]++ for all the fudge work
[Coke] eh, that's just monkey work. easy peasy.
but np. ;) 18:38
dalek gs.hs: 2be586f | au++ | Pugs/src/Pugs/Version.hs:
* dev version should be marked as such. also update copyright years.
benabik [Coke]: Good Coke, want banana? ;-)
18:39 fsergot joined
[Coke] ook. 18:39
skids you mean [ook.]?
[Coke] PerlJam: I may have just rebuilt pugs out from underneath you.
au [Coke]: ain't collaboration great in that each of us gets to pick easy-peasy work :) # fudging is definitely not easy-peasy for me, at least not yet... 18:40
[Coke] colomon: so, how is one supposed to fudge generated trig spec test files? ;)
au: hai.
colomon ooooo, that's tricky 18:41
ideally you add the fudges to the test file generator
au >>= sleep &
moritz
.oO( with patience )
colomon [Coke]: if you tell me how to fudge them, I can take a stab at it here -- more teamwork. ;)
[Coke] colomon: I think au++'s patch needs a smidge more work. when I figure out what I need to do, I'll let you know. 18:43
pugs: module Test-0.0.8;
p6eval pugs b927740: ( no output ) 18:44
[Coke] (locally, says: Unexpected ".")
moritz uhm, does that patch allow - at the boundaries of identifiers?
[Coke] au++, colomon++ #back to work here.
moritz nom: a-0
p6eval rakudo a8086d: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&a' called (line 1)␤»
[Coke] moritz: to be fair, my request in the ticket was super vague. ;) 18:45
18:45 fsergot left
felher nom: say (gather for ^100 { sleep 0.1; take $_; })[0]; 18:48
p6eval rakudo a8086d: OUTPUT«0␤»
felher nom: say (do for ^100 { sleep 0.1; $_; })[0];
p6eval rakudo a8086d: OUTPUT«0␤» 18:49
felher Well, i hoped for a timeout, but it seems you were right, flussence :)
18:49 fglock left, Jerkwad joined
felher nom: say (do for ^10000 { sleep 0.1; $_; })[0]; 18:50
p6eval rakudo a8086d: OUTPUT«(timeout)»
felher \o/
moritz note that this is a current rakudo limitation
felher moritz: it is? 'do for' is specced as lazy, too? 18:51
flussence
.oO( whoa, I actually figured out gather/take?! )
moritz felher: well, for loops in general should be... except when they are in sink context
felher moritz: so, as soon as those loops are lazy in rakudo, '(do for ...)[0]' will be lazy, too? 18:53
moritz felher: yes 18:54
felher moritz: ah, okay, thanks :) 18:55
moritz but making that work isn't trivial
felher n: say (do for ^10000 { sleep 0.1; $_; })[0];
p6eval niecza v15-4-g1f35f89: OUTPUT«(timeout)»
moritz n: say do for 1..10 { $_ }
p6eval niecza v15-4-g1f35f89: OUTPUT«Nil␤»
moritz niecza doesn't collect the retun values of loops at all
felher Ah, i see :) 18:56
moritz it cheats differently than rakudo does :-)
felher That also explains why rosettacode.org/wiki/Langton%27s_ant#Perl_6 doesn't use 'do'. It doesn't work in niecza at the moment. 18:58
19:00 Trashlord joined
dalek gs.hs: c8f18cf | au++ | Pugs/src/Pugs/ (2 files):
* Rather crude patch to disallow dash in module name components.
19:03
au ⇧ for [Coke]++ 19:04
moritz the real fix is to allow - and ' only between letters 19:05
au aye, tried that
19:07 fsergot joined
dalek gs.hs: b654984 | au++ | Pugs/src/Pugs/Lexer.hs:
* apostrophe in idents too
19:08
gs.hs: bc264ae | au++ | Pugs/src/Pugs/Lexer.hs:
* apostrophes in modules names are just fine.
19:10
[Coke] rebuilds and tries again.
au++
au: try : for each(@num1; @num2) -> $a, $b { } 19:11
pugs: user error (*** unknown parse error at Pugs/ext/Test/lib/Test.pm line 249, column 30 19:12
p6eval pugs b927740: OUTPUT«*** ␤ Unexpected "***"␤ expecting expression or ")"␤ at /tmp/tl7oYAi6GC line 1, column 13␤» 19:13
au yeah.
& for real this time :)
[Coke] ~~ 19:15
dalek gs.hs/wip/ident: 4a341a7 | au++ | Pugs/src/Pugs/Lexer.hs:
* implements the proper ident semantic but runs into the many/many parsec error; improvements welcome before mergine
19:23
19:32 lateau_ joined 19:36 Vespakoen joined
Vespakoen Hey guys! =) Every time i google for CQRS perl6 seems to pop up sometimes, does Perl have a close relationship with CQRS somehow? 19:37
19:37 pernatiy left
felher moritz: one more question, if you don't mind: I just read the spec on gather/take and it says that gather evaluates its statement or block in sink context. Doesn't that imply that 'gather for' isn't lazy, because the for-loop isn't lazy in sink? 19:37
moritz Vespakoen: there are just one or two Perl 6 developers that are also very interested in CQRS 19:38
felher: that sounds odd.
Vespakoen Ah I see, cool, who are they ? =) 19:39
felher moritz: yeah. I just noticed that it doesn't seem to be what you said before, but i wan't sure if i justed missed something :)
moritz Vespakoen: masak, and I think jnthn also a bit 19:41
felher moritz: i have to go and catch the bus. But i will backlog, if you wan't so may more on the matter :)
felher -> afk
*want
19:42 lateau_ left
Vespakoen moritz, allright, thanks mate! 19:42
19:45 localhost left 19:46 localhost joined 19:47 fglock joined
dalek kudo/sink2: cdde942 | moritz++ | src/Perl6/Sinker.pm:
use more in-place editing in the sinker, and start to flag whether to sink the last statement
19:47
fglock yay! perlito5 got regexes
doy perl regexes, or javascript regexes? 19:48
fglock javascript regexes - but I've got the parser working, so I can replace later
also works with arbitrary delimiters; perlcabal.org/~fglock/perlito5.html 19:49
(though the slash is special in javascript) 19:50
19:51 Trashlord left
fglock translating perl5 regexes to javascript regexes would be ... interesting 19:53
masak moritz++ # for passing Verspakoen on to me
19:53 ksi joined 19:54 Trashlord joined
fglock hmm - /e looks doable 19:55
20:13 birdwindupbird left 20:35 MayDaniel left 20:37 raiph joined 20:46 raiph left
sorear good * #perl6 20:57
masak sorear! \o/
sorear o/ masak 20:59
21:00 pernatiy joined 21:01 GlitchMr left
colomon o/ 21:02
21:05 pernatiy left 21:09 bruges left, y3llow left 21:11 y3llow joined, bruges joined 21:13 y3llow left, y3llow joined
fglock o/ 21:13
21:15 y3llow left, y3llow joined 21:17 y3llow left 21:18 y3llow joined
[Coke] wonders how fast rakudo will build on a dual core i7 macbook air. 21:18
[Coke] times it (post nqp/parrot build.)
flussence guesses 14½ minutes 21:19
tadzik naah, it's shorter here on core2duo
[Coke] guesses much faster.
flussence oh, rakudo on its own... 6½
21:20 mtk left
pyrimidine got a quad core i7 I can test on 21:20
can I call a parallel build with 'perl Configure.pl'? 21:21
[Coke] there 21:22
's a parrot-option, but that's configure only.
real: 4m18.247s
[Coke] may stop running the testing stuff on feather. ;) 21:23
flussence just realised my test graph thing has never had parallel make for the parrot-building step...
21:24 pernatiy joined
pyrimidine timing just rakudo build? Or from a clean checkout (nqp, parrot, rakudo)? 21:25
21:25 yeltzooo left
moritz flussence: perl Configure --gen-parrot --make-option=-j5 21:26
that's a fairly new option
21:26 yeltzooo joined
flussence oh, that'd explain 21:26
[Coke] pyrimidine: that is rakudo after nqp/parrot is build. 21:27
I can try it again with the make-option above for MOAR.
21:27 Vespakoen left 21:28 Vespakoen joined
moritz MOAR CORES! 21:28
you can also configure parrot to compile with ccache
pyrimidine moritz: is that supposed to be --parrot-make-option? 21:31
moritz well, make options for rakudo would be passed to make, not to Configure.pl 21:32
and I suppose we could re-use them for gen-nqp too 21:33
pyrimidine just ran a clean checkout for rakudo, getting 'Unknown option: make-option' 21:34
but I'm in nom
[Coke] nom is the correct branch. 21:35
masak github.com/perl6/Pugs.hs/commit/43d7ae3302 adds dashes but forgets apostrophes. :) 21:37
oh, but later commits fix that. au++
fglock looks around niecza source code 21:38
pyrimidine real 3m6.634s 21:39
sorear hello, fglock
fglock hi 21:40
[Coke] masak: it's still not quite right.
(we can't parse Test.pm, e.g.)
fglock I wonder how much code it takes to have a simple perl5 in dotnet - and if that's useful at all 21:41
21:41 zby_home_ left
masak I think this is the first time in many years that au++ goes to sleep, and then a commit appears. :) 21:43
on the #perl6 channel, I mean.
bynari Is TimToady Larry? 21:47
sorear bynari: yes
Tene bynari: Yes.
sorear au sleeps?
moritz no, just an amazing copy :-)
bynari Ah. I had absolutely no clue that was Larry when I was talking to him the other day! 21:48
I've been around IRC since 1999 and I've never encountered Larry
sorear he's a pretty cool guy
bynari feels star struck
sorear you'll get over it.
bynari :)
sorear (hi, I'm sorear, I hear I'm famous?0
moritz star: say 'strike bynari' 21:49
p6eval star 2012.01: OUTPUT«strike bynari␤»
moritz now you're truely star struck :-)
bynari Hahahaha
masak I'm having a deja vu over this conversation.
21:50 kaare_ left
masak didn't someone feel star struck just the other day over finding out that TimToady is Larry Wall? 21:50
[Coke] certainly did when I found it out.
PerlJam "star struck"? was that a pun?
[Coke] and again when I sat next to him at a yapc or 2.
[Coke] is over it now.
nom: say "eat me"
p6eval rakudo a8086d: OUTPUT«eat me␤»
masak [Coke]: yeah, same here. mostly. 21:51
TimToady too
pyrimidine :)
PerlJam the only thing that strikes me is that TimToady is the wisest non-bearded person I've met so far
TimToady well, my main attribute is just being more stubborn than anyone else... 21:52
masak I sometimes find it fun to be extra *in*formal at/with TimToady because I know he's Larry Wall. maybe that counts as being star unstruck... :)
bynari I don't think it's intended to be a pun, PerlJam, nope
PerlJam bynari: bummer, it could have been a good one. 21:53
TimToady the unintentional puns are often the best
masak bynari: you have one more chance to make a proper pun. no pressure.
PerlJam heh
pyrimidine so, with Rakudo on Macbook quad core i7, with 'time make -j 4', I get ~3m
21:53 sftp left
bynari Rakudo Star struck? 21:53
masak bynari: right... that's the one we thought you made in the first place :P 21:54
bynari Great. Do I get my cookie?
masak hands a cookie to bynari
bynari Thanks!
[Coke] pyrimidine: nice.
pyrimidine testing on SGI-Altix now :) 21:55
21:55 sftp joined
[Coke] installs mono and drags in half of macports. 21:55
pyrimidine yeah, I hate that about macports
moritz is that a feature of mono, or of macports? 21:56
21:57 bluescreen10 left
benabik ports, probably. 21:58
homebrew is the only Mac package manager I've found that doesn't try to install everything under the sun.
benabik installs Mono via package though.
pyrimidine yeah, macports has a tendency to install specific versions of things (instead of a min version) 21:59
21:59 icwiener joined
geekosaur homebrew still has the quaint notion that it can safely use system and other libraries. this is sometimes true for very clean installs, but when it's false the reuslts are horrifying 21:59
[Coke] pyrimidine: (min version) well, I only just got this box, so any version takes time.
pyrimidine true 22:00
geekosaur in any case mono depends on X11 (drags in a whole lot of stuff since it builds a known good version) and indirectly via libgdiplus it drags in cairo (gnome. 'nuff said)
pyrimidine i hate it when it decides to install multiple versions of perl/python/ruby/etc depending on the port
[Coke] heh. I /just/ got to cairo. ;)
pyrimidine: eh. I treat those like the system perl and just never touch 'em. is frustrating, though. 22:01
geekosaur they're working on that. perl should be substantially fixed at this point, python is work ongoing
22:01 pmurias joined
pyrimidine [Coke]: yeah, me too 22:01
pmurias hi
sorear how long does X11 take to build?
doy cairo doesn't depend on gnome here 22:02
masak pmurias! \o/
doy don't really see why it should
sorear I know that back in the day X11's "make World" was the quintessential example of "run this if you want to not do anythign else on your computer for the next week"
pyrimidine heh
sorear hello pmurias.
pmurias fglock: one benefit of having perlito5 on dotnet would be easy integration with niecza
flussence sorear: it's gotten much better since X.Org took over development and split everything into sane-sized modules :) 22:03
(the X server takes about 2 minutes on my machine, rakudo's make just took 4:11)
doy back when i ran gentoo, compiling openoffice was a good order of magnitude longer than x11 22:04
flussence oof, I installed that by accident once. Left the machine overnight, came back to find I'd installed openoffice instead of openoffice-bin. It took around 9 hours :) 22:05
(this was on an old P4 though, not the quad core one I'm on now...)
geekosaur no, it's part of gnome, but as such it drags in a bunch of stuff (not as much as the higher layers of gnome but still) 22:07
fglock pmurias, sorear: I'm looking for a start point
22:08 skids left
fglock does niecza generate C# ? 22:08
doy the only thing it drags in that's "part of gnome" is glib2
fglock how do you do eval()
pmurias fglock: niecza generates nam (docs/nam.pod)
fglock looking 22:09
pmurias fglock: which is then compiled to .net bytecode by a backend written in C#
sorear: how does look at the name generated from a p6 program? 22:11
s/name/nam/ 22:12
fglock I've just got mono installed - but now sleep &
22:13 fglock left
pmurias g'night 22:13
masak 'night, pmurias. dream of brain bytecode generated by a backend of neurons. 22:14
sorear pmurias: NIECZA_TRACE_DOWNCALLS and look for the sub_finish calls 22:15
bah, I missed fglock ... hopefully will be back 22:16
pmurias sorear: he is much more often on the channel nowdays 22:21
sorear: how would i feed nam to the nam2bytecode compiler? 22:25
22:30 Vespakoen left
sorear Look at sub_finish in CodeGen.cs 22:31
nam code only exists for subs, not other objects 22:32
other objects are created by the compiler using a communicative protocol
masak GPW talks now uploaded and available at feather.perl6.nl/~masak/
sorear you can't separate the stages anymore because of BEGIN
sorear afk
22:33 Vespakoen joined
pmurias sleep& 22:34
22:34 pmurias left 22:42 Vespakoen left 22:43 Vespakoen joined
masak misses mberends 22:45
23:00 mj41 left 23:24 alester left 23:25 skids joined 23:41 ksi left
felher hihi, there is no spoon :) 23:48
masak an oblique way of saying that we don't have to do any gensymming, because the right thing mostly just falls out of correct fiddling with OUTERs. 23:49
felher masak: do you know if there will be any videos? I'd really like to see/hear your talk :) 23:51
masak there weren't any video recorders that I could see.
23:51 syslq__ joined
felher What a pitty :/ 23:51
23:51 syslq__ left
masak yeah. 23:52
do sign up for FPW or YAPC::EU this year, though.
then you'll see better versions of the same talk ;)
felher :D 23:53
masak++ #talk/slides/macro hacking 23:55
felher bed
'night, #perl6
23:58 icwiener left, icwiener joined
masak 'night, felher. dream of videos of people's talks. 23:59
I'll also say 'night, #perl6
felher masak: i sure will ;)