»ö« 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.
jnthn 'night, #perl6 00:15
[Coke] tadzik: you still here? 00:44
phenny: tell tadzik that I cannot reproduce the panda install error. I blame insufficient beer. 00:49
phenny [Coke]: I'll pass that on when tadzik is around.
[Coke] er, where does Rakudo::Debugger get installed? 00:54
(when you install via panda)
ah, there it is. 00:56
flussence I got my panda working too... had to blow away the entire rakudo/install directory, then update my external panda.git clone and run bootstrap.pl in there. For some reason the one that gets put into install/lib/x/y/z/w/parrot/foobar/panda/src/panda/ was full of 0-byte files - took me a while to figure out why running bootstrap from there didn't work... 00:59
[Coke] yay, I can now perl6-debug my t1 entry and figure out why it started failing! tadzik++ jnthn++ masak++ 01:00
jnthn: is there a way to do something like "perl6-debug code < inputs" ? 01:01
diakopter it doesn't just work? 01:02
[Coke] r: say 1 01:03
p6eval rakudo 22518b: OUTPUT«1␤»
[Coke] diakopter: er, yes, but not how I want. I want it to work like perl6 < inputs
not like I'm typing things into perl6-debug. 01:04
[Coke] r: say "3";␤__END__␤say "4"; 01:05
p6eval rakudo 22518b: OUTPUT«===SORRY!===␤Undeclared name:␤ __END__ used at line 2␤␤»
[Coke] std: say "3";␤__END__␤say "4"; 01:07
p6eval std a8bc48f: OUTPUT«===SORRY!===␤Undeclared name:␤ '__END__' used at line 2␤Check failed␤FAILED 00:00 41m␤»
dalek rl6-bench: 8d3b8f3 | (Geoffrey Broadwell)++ | README:
Further README improvements, including tips on preventing benchmark bogosity
02:43
shachaf seen ingy 04:14
aloha ingy was last seen in #perl6 4 days 2 hours ago joining the channel.
Bucciarati p6eval: use rakudo 05:58
std: use rakudo
p6eval std a8bc48f: OUTPUT«===SORRY!===␤Cannot locate module rakudo at /tmp/GUS3E9rMxL line 1 (EOF):␤------> use rakudo⏏<EOL>␤Check failed␤FAILED 00:00 41m␤»
Bucciarati hrm 05:59
sorear Bucciarati: what are you trying to do? 05:59
Bucciarati I'm trying to use rakudo, clearly :) but I got it backwards wrt the bots 06:02
std: 1+1
p6eval std a8bc48f: OUTPUT«ok 00:00 42m␤»
Bucciarati std: say 1+1
p6eval std a8bc48f: OUTPUT«ok 00:00 42m␤»
sorear rakudo: say "hi Bucciarati" 06:03
p6eval rakudo 22518b: OUTPUT«hi Bucciarati␤»
Bucciarati rakudo: say 1+1
p6eval rakudo 22518b: OUTPUT«2␤»
Bucciarati nice.
sorear std is just a syntax checker 06:03
Bucciarati good to know; is the bot usage documented somewhere ? 06:03
sorear p6eval: help 06:04
p6eval sorear: Usage: <(star|pugs|nqp|b|std|niecza|rakudo|nom|npr|n|r|perl6|prn|rn|p|rnp|nrp|pnr|rpn|p6|nr)(?^::\s) $perl6_program>
Bucciarati p6eval: help star
p6eval Bucciarati: Usage: <(star|pugs|nqp|b|std|niecza|rakudo|nom|npr|n|r|perl6|prn|rn|p|rnp|nrp|pnr|rpn|p6|nr)(?^::\s) $perl6_program>
Bucciarati p6eval: star print 1+1 06:05
sorear Bucciarati: "p6eval: star" does not match that regex. 06:05
FROGGS_ star: say 'good morning!' 06:15
p6eval star 2012.10: OUTPUT«good morning!␤»
moritz \o 06:18
sorear o/ moritz 06:21
Su-Shee good morning everyone 09:02
FROGGS morning Su-Shee 09:03
sorear o/ 09:09
kresike hello all you happy perl6 people 09:49
jnthn morning o/ 10:34
tadzik good morning
phenny tadzik: 00:49Z <[Coke]> tell tadzik that I cannot reproduce the panda install error. I blame insufficient beer.
grondilu rn: gist.github.com/4336126 11:42
p6eval niecza v24-12-g8e50362: OUTPUT«(timeout)»
..rakudo 22518b: OUTPUT«2.41421355164605␤»
grondilu r: say sqrt(2) # <-- I was expecting that 11:43
p6eval rakudo 22518b: OUTPUT«1.4142135623731␤»
grondilu rn: gist.github.com/4336126 11:45
p6eval niecza v24-12-g8e50362: OUTPUT«(timeout)»
..rakudo 22518b: OUTPUT«2.41666666666667␤»
moritz the first nummber looked like 2.sqrt + 1 11:52
grondilu yes, but I don't understand why it appears 11:54
this 1 comes out of nowhere
jnthn
.oO( The two hardest problems in programming is off by one errors... )
11:55
Su-Shee masak: I'm going to throw your Text::CSV module onto my garbage data today. :) 12:05
moritz predicts GIGO :-) 12:08
Su-Shee "great input, great output"? ;) 12:11
oh wait, garbage input, great output ;)
Su-Shee right now, I'm fighting against Python anyways. 12:11
hoelzro Su-Shee: what parts are you fighting? 12:12
hoelzro was writing Python last night
Su-Shee hoelzro: I'm doing xml with beautiful soup, getting a unicode object here and there and tried accidently to apply string methods on it and that doesn't work like I mean it to :) 12:13
Su-Shee hoelzro: I probably need to read up on python, unicode, encoding foobar. 12:14
jnthn bah, so if you do %!foo := []; in NQP it works...until you discover your hash seems to be giving you collisions in some cases. Bonus: my keys were sometimes different integers, so it "worked" for a while... 12:18
tadzik uhh 12:25
jnthn yes, it was confusing for a while :) 12:32
grondilu rn: say (^3 Z* *)».(4); 12:52
p6eval rakudo 22518b: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: Mu *%_)␤␤ in method Numeric at src/gen/CORE.setting:796␤ in sub infix:<*> at src/gen/CORE.setting:2769␤ in block at src/gen/CORE.setting:12568␤ in sub coro at src/gen/CORE.setting:5633␤ in meth…
..niecza v24-12-g8e50362: OUTPUT«{ ... }␤»
grondilu can't I create an array of closure with a metaoperator?
rn: say (^3) Z* *;
p6eval rakudo 22518b: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: Mu *%_)␤␤ in method Numeric at src/gen/CORE.setting:796␤ in sub infix:<*> at src/gen/CORE.setting:2769␤ in block at src/gen/CORE.setting:12568␤ in sub coro at src/gen/CORE.setting:5633␤ in meth…
..niecza v24-12-g8e50362: OUTPUT«{ ... }␤»
jnthn No 12:53
Or at least, Rakudo doesn't think you can :)
grondilu I figured out what was wrong with gist.github.com/4336126. The triangular version of the reduce metaoperator reapeats all the shifts at eatch steps. That's why I wanted to test with an array of closures made from a zip operator instead. 12:56
hoelzro Su-Shee: encodings are a pain in pretty much any language, I guess =P 13:07
Perl makes it fairly simple, at least
dalek rl6-roast-data: 88d9b96 | coke++ | / (3 files):
today (automated commit)
13:20
rl6-roast-data: 379b5f7 | coke++ | / (3 files):
today (automated commit)
rl6-roast-data: 5eb1106 | coke++ | / (3 files):
today (automated commit)
rl6-roast-data: 106a4d1 | coke++ | / (4 files):
today (automated commit)
rl6-roast-data: 03950e1 | coke++ | / (4 files):
today (automated commit)
rl6-roast-data: 0b75dd9 | coke++ | / (4 files):
today (automated commit)
timotimo every language that has strings that store their encoding with them got one leg up over all the others. it's why whenever i have to do c++ i try to use Qt's QString class 13:28
moritz QuantumString!
jnthn It's all the encodings at once? 13:29
timotimo and whenever you use it, it has the right encoding
jnthn bbi20 13:38
colomon rn: say (^3 X* *)».(4); 13:45
p6eval rakudo 22518b: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: Mu *%_)␤␤ in method Numeric at src/gen/CORE.setting:796␤ in sub infix:<*> at src/gen/CORE.setting:2769␤ in block at src/gen/CORE.setting:12548␤ in sub coro at src/gen/CORE.setting:5633␤ in meth…
..niecza v24-12-g8e50362: OUTPUT«{ ... }␤»
colomon oh! 13:46
rn: say (^3 X* *)(4); 13:48
p6eval niecza v24-12-g8e50362: OUTPUT«0 4 8␤»
..rakudo 22518b: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'List'␤ in at src/gen/BOOTSTRAP.pm:852␤ in any at src/gen/BOOTSTRAP.pm:836␤ in block at /tmp/TVyVq9wKe7:1␤␤»
colomon rn: say (^3 X* (* XX 3))».(4); 13:49
p6eval rakudo 22518b: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: Mu *%_)␤␤ in method Numeric at src/gen/CORE.setting:796␤ in sub infix:<*> at src/gen/CORE.setting:2769␤ in block at src/gen/CORE.setting:12548␤ in sub coro at src/gen/CORE.setting:5633␤ in meth…
..niecza v24-12-g8e50362: OUTPUT«{ ... }␤»
colomon Has it ever been specified what Whatever closures do with metaops? 13:50
grondilu rn: say ^3 X* * 13:58
p6eval rakudo 22518b: OUTPUT«Cannot call 'Numeric'; none of these signatures match:␤:(Mu:U \v: Mu *%_)␤␤ in method Numeric at src/gen/CORE.setting:796␤ in sub infix:<*> at src/gen/CORE.setting:2769␤ in block at src/gen/CORE.setting:12548␤ in sub coro at src/gen/CORE.setting:5633␤ in meth…
..niecza v24-12-g8e50362: OUTPUT«{ ... }␤»
colomon n: say (^3 X* *)(2, 4, 6) 14:00
p6eval niecza v24-12-g8e50362: OUTPUT«Unhandled exception: Excess arguments to ANON, used 1 of 3 positionals␤ at /tmp/EwVsuYTk1R line 0 (ANON @ 1) ␤ at /tmp/EwVsuYTk1R line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4218 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.set…
colomon n: say (^3 X* *)([2, 4, 6])
p6eval niecza v24-12-g8e50362: OUTPUT«0 3 6␤»
colomon n: say (^3 X* *)([2, 4, 6, 8, 10]) 14:01
p6eval niecza v24-12-g8e50362: OUTPUT«0 5 10␤»
colomon taking the size instead of the values.
grondilu indeed
grondilu but truly that should be an error. ^3 X* * is not *a* function, but three functions. 14:02
grondilu (a list of three functions, I mean) 14:03
n: say (* + 1, * *2)( [ ^3 ] ) 14:04
p6eval niecza v24-12-g8e50362: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Parcel␤ at /tmp/X8LEUIam3g line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4218 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4219 (module-CORE @ …
grondilu ^ this is an expected error
grondilu n: say (* + 1, * *2)».( [ ^3 ] ) 14:05
p6eval niecza v24-12-g8e50362: OUTPUT«4 6␤»
FROGGS jnthn: is there a way to debug rakudo using your debugger? 14:06
I'd need to step through Perl6/World.pm and Actions.pm ...
colomon grondilu: how do you know? niecza clearly believes ^3 X* * is a single function 14:13
it's the same as -> $x { ^3 X* $x } 14:14
n: say (-> $x { ^3 X* $x })(3)
p6eval niecza v24-12-g8e50362: OUTPUT«0 3 6␤»
colomon n: say (-> $x { ^3 X* $x })([1, 2, 3, 4]) 14:15
p6eval niecza v24-12-g8e50362: OUTPUT«0 4 8␤»
colomon r: say (-> $x { ^3 X* $x })([1, 2, 3, 4])
p6eval rakudo 22518b: OUTPUT«0 0 0 0 1 2 3 4 2 4 6 8␤»
colomon though I'm inclined to think rakudo is right in this example
grondilu hadn't thought of the -> $x { ^3 X* $x } interpretation 14:16
I understood map -> $x { $x * * }, ^3 14:18
grondilu r: say (map -> $x { $x * * }, ^3)».(3) 14:19
p6eval rakudo 22518b: OUTPUT«0 3 6␤»
jnthn back] 14:20
colomon nr: say (map -> $x { $x * * }, ^3)».(3)
p6eval rakudo 22518b, niecza v24-12-g8e50362: OUTPUT«0 3 6␤»
jnthn FROGGS: No, not least because Actions.pm and World.pm are NQP-based. :)
grondilu what is supposed to take precedence, between metaoperators and currifying? 14:22
(assuming currifying is the correct word here, which I'm not so sure) 14:23
moritz (currying) 14:25
grondilu looks in S02 14:26
it seems that the correct p6 term is 'autopriming', right? 14:27
moritz oh right, we've had a rename
cedrvint Woodi: (about irclog.perlgeek.de/perl6/2012-12-18#i_6255093) it is possible to define something like "multi sub infix:<==> (Measure:D $a, Measure:D $b)" for Numeric comparison only, as per S03. In this example, the two operands haven't the same type (Num vs. Range, somewhat). 15:02
timotimo can i embed rakudo in a cpp application in any meaningful way? 15:13
[Coke] parrot has an embedding interface. 15:28
(so, load parrot, make parrot load perl6.pbc, then invoke the perl6 parrot compiler? maybe? 15:29
brrt [Coke], timotimo, yes, almost
parrot has the compreg interface, which allows you to load high-level-language compilers at runtime 15:30
rakudo used to be one, but nom ate it
afaik - and i haven't checked recently - if you do not run either the nqp or the rakudo binary, compreg('perl6') will not work 15:31
r: pir::compreg('perl6');
p6eval rakudo 22518b: OUTPUT«===SORRY!===␤pir::compreg missing a signature␤»
brrt r: pir::compreg__pS('perl6')
p6eval rakudo 22518b: OUTPUT«use of uninitialized value of type Mu in string context␤use of uninitialized value of type Mu in string context␤===SORRY!===␤error:imcc:The opcode 'compreg_s' (compreg<1>) was not found. Check the type and number of the arguments␤ in file '(file unknown)' line 1993…
timotimo say, a compiled perl6 module, can that just be loaded into parrot without having rakudo to go with it?
brrt r: pir::compreg__Sp('perl6')
p6eval rakudo 22518b: ( no output )
brrt timotimo, no
because of the whole sixmodel thing
timotimo ah, ok 15:32
jnthn And the small issue of, you know, CORE.setting :)
timotimo hah, all right :)
brrt ….. that is a good point jnthn
jnthn And that eval needs to call back into the compiler :)
brrt how would this be fixed in an ideal world
jnthn I'm a bit surprised that compreg doesn't work out
I mean, we still do the registration 15:33
brrt iirc, nqp does the registration at starting-time
jnthn yeah
brrt i haven't checked recently
[Coke] r: my $pc = pir::compreg__SP('perl6');
p6eval rakudo 22518b: ( no output )
jnthn oh...yeah, it happens in the MAIN sub
[Coke] r: my $pc = pir::compreg__SP('perl6'); say $pc("3 ~ 4");
p6eval rakudo 22518b: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'Str'␤ in at src/gen/BOOTSTRAP.pm:852␤ in any at src/gen/BOOTSTRAP.pm:836␤ in block at /tmp/SzGvs9jPLY:1␤␤»
brrt the compiler is not a Callable 15:34
[Coke] r: my $pc = pir::compreg__PS('perl6'); say $pc("3 ~ 4");
p6eval rakudo 22518b: OUTPUT«Nominal type check failed for parameter '$got'; expected Any but got Perl6::Compiler instead␤ in block at /tmp/njW1Zwurk7:1␤␤»
[Coke] r: my $pc = pir::compreg__PS('perl6'); say $pc.compile("3 ~ 4");
p6eval rakudo 22518b: OUTPUT«Nominal type check failed for parameter '$got'; expected Any but got Perl6::Compiler instead␤ in block at /tmp/1rXEx8HYvn:1␤␤»
brrt r: my $pc = pir::compreg__Sp('perl6'); say $pc.eval("3 ~ 4");
p6eval rakudo 22518b: OUTPUT«Too many positional parameters passed; got 2 but expected 1␤ in method eval at src/gen/CORE.setting:2314␤ in block at /tmp/Bsw4qAP5aW:1␤␤»
jnthn r: my Mu $pc := pir::compreg__PS('perl6'); $pc.eval('say 42');
p6eval rakudo 22518b: OUTPUT«42␤»
jnthn I think if it's possible to move some of the stuff out of the main sub things may work out better. Not sure if that's trivial or not. 15:36
timotimo my Mu $pc := pir::compreg__PS('perl6'); $pc.eval(q{my Mu $pc := pir::compreg__PS('perl6'); $pc.eval('say "what have i done?!"')});
r: my Mu $pc := pir::compreg__PS('perl6'); $pc.eval(q{my Mu $pc := pir::compreg__PS('perl6'); $pc.eval('say "what have i done?!"')});
p6eval rakudo 22518b: OUTPUT«what have i done?!␤»
timotimo bwahahahaha >:]
jnthn yo dawg...I heard you like Perl6::Compiler :P 15:37
jnthn nqp: sub MAIN() { say("in MAIN") } 15:37
p6eval nqp: OUTPUT«in MAIN␤»
jnthn nqp: say("here"); sub MAIN() { say("in MAIN") }
p6eval nqp: OUTPUT«here␤in MAIN␤»
jnthn nqp: my $*x := 42; say("here"); sub MAIN() { say("in MAIN"); say($*x); } 15:38
p6eval nqp: OUTPUT«here␤in MAIN␤42␤»
jnthn Hm
That's promising
jnthn brrt, timotimo: So I think the answer is, if you move everything in main.nqp except the $comp.command_line call and the final END phasers loop out of sub MAIN and place them before it, then just loading perl6.pbc may well be enough to get you a compreg'd compiler. 15:40
brrt ok, thats definitely something to try 15:41
[Coke] anyone know Zach Bornheimer ? 15:56
lichtkind moritz: any comments ? 16:04
moritz lichtkind: I haven't yet had time to review the post 16:06
lichtkind moritz: better pass to someone else?
kresike bye folks
moritz lichtkind: but you forgot a small but important detail 16:07
lichtkind what?
moritz lichtkind: when should it be published?
last I looked, our slots were already taken
lichtkind so you dont need it?
moritz I don't know off-hand 16:08
moritz the schedule is in the perl6/mu repo in misc/perl6advent-2012/schedule 16:08
lichtkind moritz: looks like 22 is no article yet and diff might be happy not to do something 16:11
moritz lichtkind: well, you can always ask him 16:13
lichtkind who is it? 16:14
moritz PerlJam
lichtkind thanks 16:15
PerlJam: is your article for calendar leaf 22 ready?
PerlJam lichtkind: not even started. 16:18
lichtkind PerlJam: would you agree to let in my text about some basic perl 6 rx ? 16:19
its already done
PerlJam I was going to start writing tonight, but if you've already got something ready to go, feel free to take Dec 22
lichtkind maybe you could proofread it moritz seem occupied 16:20
PerlJam sure. What's the url?
lichtkind i sent him mail
PerlJam ok. [email@hidden.address] will get to me
lichtkind thanks 16:22
lichtkind PerlJam: sent 16:27
pmichaud good morning, #perl6 16:31
jnthn morning, pmichaud o/
lichtkind good morning
pmichaud: woke up at 17 pm, i like that
pmichaud can someone from any(<jnthn perljam moritz masak>) send me a ssh public key that I can put onto the rakudo account so that masak++ can upload a tarball tomorrow? 16:32
jnthn pmichaud: How soon do you need it? I expect masak will be around in a little bit... 16:33
pmichaud jnthn: well, by tonight. my schedule tomorrow is really iffy
jnthn pmichaud: Mailed you one for me 16:34
So there's at least one now.
pmichaud the same public key used by github should suffice, fwiw :-)
jnthn yeah, that's what I sent :)
kthakore Hey guys! Trend Micro is blocking the rakudo download site on Windows 7! i.imgur.com/8oqKK.jpg 16:52
This would be a huge problem of getting perl6 in our lab.
jnthn wtf. 16:53
kthakore It was very scary for my Advisor. I was like it is bullshit but it turned him away from getting rakudo.
:(
flussence if I saw that I'd be more concerned that I'd been running a faulty antivirus the whole time... 16:54
kthakore flussence: indeed ... but some people don't get that
jnthn "The latest tests indicate that this URL contains malicious software or could defraud visitors."
kthakore wtf
lets do a reclassify request? 16:55
I can do one as a trend micro customer
flussence: a lot of people use trend micro at my school. All the computers have it. 16:56
jnthn is submitting one 16:57
wait, how the hell am I meant to read this captcha...
pmichaud ...seriously? trend micro is blocking the "how-to-get-rakudo" page?
kthakore yeah :(
timotimo oh, that high risk from the favicon 16:58
jnthn oh finally, I passed the captcha test.
I wonder if you can get a program to solve those...
:P
pmichaud I sent a reclassify request as the website owner 16:59
jnthn "Trend Micro will start processing your request immediately and we will send you the result once it is done."
pmichaud: ah, me also :)
kthakore I tried to send one as a trend micro customer
jnthn I figured I was owner enough :)
kthakore it wants my serial number :(
while this happens can I get the windows download link for rakudo? 17:00
may I*
jnthn kthakore: github.com/rakudo/star/downloads
oh, seems we don't have an MSI for the 2012.11 though 17:01
kthakore oh doh! I should have done that ...
oh ok I can wait
jnthn Well, 2012.10 is there.
It's only so old... :)
kthakore hehe ok
is the upgrade process just install new .msi? 17:02
jnthn think so
FROGGS looks like trend micro got us^^ 17:04
kthakore FROGGS: you should axe morder them 17:06
FROGGS ya, I really should
kthakore dang advisor is going to use ANTLR for grammars
oh well
FROGGS uhh, doesnt seem that nice 17:07
kthakore you know ANTLR FROGGS ? 17:08
FROGGS no, just the wikipedia page
jnthn
.oO( Antlr? Oh deer... )
17:09
kthakore jnthn: hehe
He wastes like 5 days making a simple tokenizer 17:10
I made a similar in perl6 grammar in 15 mins
he was impressed and wanted to learn it
THEN BAM TREND MICRO
FROGGS kthakore: do try Perl 6's grammars, just for a little project, it's awesome
ohh, you already have :/
kthakore FROGGS: where is "try Perl 6's grammars" 17:11
I just did it from reading test code in rakudo's code base :|
FROGGS these are just words buddy
me too, reading the rakudo/src/Perl6/Grammar.pm 17:12
kthakore yeah that too
FROGGS k, gtg now, see ya later
kthakore oh ok
no tutorial?
ok bye bye
FROGGS kthakore: in the book there is a chapter 17:13
kthakore cool
FROGGS but it is a bit short
kthakore I should have known
sahadev hello, in my rakudo star 2012.11 setup, panda seems to be broken because of a change I made (replacing the hard-coded unreachable URL for the projectsfile from feather.perl6.nl:3000/projects.json to modules.perl6.org/proto.json). I ran the bootstrap.pl script to rebuild panda, but I still get the "Missing or wrong version of dependency ..." error when Panda/Ecosystem.pm is being loaded. 17:19
how do I fix this problem?
jnthn sahadev: Not entirely sure, but did you try the rebootstrap script instead? 17:21
sahadev jnthn: no. let me try it. 17:22
sahadev jnthn: the rebootstrap script said "No need to rebootstrap, running normal bootstrap", and repeated the bootstrap process. 17:32
sahadev after this Panda files were installed in ../install/lib/parrot/4.6.0/languages/perl6/site/bin. When I ran from here, I got "Missing or wrong version of dependency 'lib/Shell/Command.pm'" error. 17:33
I found two different versions of Shell/Command.pm, so renamed away the older one. that brought me back to the original error "Missing or wrong version of dependency '.../install/lib/parrot/4.6.0/languages/perl6/lib/Panda/Ecosystem.pm'" 17:34
not sure what I can do here :(
jnthn sahadev: The error typically happens when there are wrong versions of PIR pre-compiled output around. 17:40
sahadev should removing the .pir file force recompile when I run the panda script? 17:43
jnthn If it can't find those then it would certainly use the source version and compile from that. 17:44
masak_webchat I can't seem to connect to feather right now :/ 17:50
hoelzro is the vmlibs options for nqp handled by nqp itself, or is it just passed along to Parrot?
sahadev I had to remove Panda.pir as well to make the error go away. But now, I get a different error "Null PMC access in invoke() in sub getfile at .../Panda/Ecosystem.pm:14) 17:51
jnthn sahadev: At this point, it's probably quicker to remove all the Panda-installed things and just bootstrap it and install them again. 17:52
hoelzro: Handled by NQP
hoelzro jnthn: ok, thanks! 17:53
jnthn masak_webchat: Yes, seems it's down
masak_webchat oh, that explains it :/
hoelzro jnthn: but it just results in a few .loadlib instructions, right?
jnthn hoelzro: It gets passed down to QAST::CompUnit node, which in turn causes .loadlib directives to appear in the PIR
hoelzro so the loading of the libs is ultimately done by Parrot, yes?
is there a way to tell Parrot where to find these libs? for a single invocation on the command line, I mean 17:54
jnthn hoelzro: Maybe, but I don't know it off hand
hoelzro: parrot -h or so may tell you
benabik -L adds a directory to the library path 17:56
hoelzro the nqp executable is essentially some PBC that gets feed to an embedded interpreter, right?
I'm wondering if it's possible to pass options to nqp that make it into the underlying Parrot VM 17:57
jnthn No
But you can run parrot and feed it nqp.pbc
benabik PBC that gets fed to the parrot library, technically)
hoelzro I see
shoot
that makes what I'm trying to do a lot messier =/
jnthn What are you trying to do? :) 17:59
hoelzro I'm trying to fix the Rakudo Star 'make install' rule to be friendlier to distribution packagers
make install DESTDIR=$pkgdir *should* just work 18:00
timotimo saw the ticket for that. good thing youre tackling it.
hoelzro I feel like Rakudo * should have some good packages if it's going to be taken seriously =) 18:02
masak_webchat I trivially agree.
jnthn +1 18:03
I'm about the worst person imaginable to work on such things, but I'm happy somebody is taking it on. 18:04
hoelzro when is * 2012.12 going out? 18:05
Dec 25? =P
masak_webchat .oO( followed by three magi ) 18:06
hoelzro the best solution I have for figuring out the current issue is setting LD_LIBRARY_PATH 18:13
which, to me, is a gross hack that isn't portable.
jnthn dinner, bbl 18:18
hoelzro if no buddy minds, I'd like to braindump my current understanding of how nqp compiles perl6-debugger.nqp 18:29
just to sanity check it
so, when I invoke nqp --vmlibs=perl6_group,perl6_ops perl6-debug.nqp 18:32
nqp compiles perl6-debug.nqp into an AST (or a QAST, in this case)
it writes out a temporary PIR file with loadlib statements for perl6_group and perl6_ops, followed by the PIR representation of the QAST 18:33
it then tells parrot to compile that temporary PIR to a PBC/executable
does that sound right?
grondilu rn: gist.github.com/4339194 18:35
benabik hoelzro: I don't think it actually writes out a file if it's executing directly. 18:36
grondilu rn: my @a = 1 .. *; say @a.shift;
rn: say "hello?" 18:37
hoelzro benabik: but conceptually, that's how it works, right?
benabik ENOP6EVAL
grondilu ok
benabik hoelzro: Basically, yes. file --> QAST --> PIR --> PBC. 18:38
hoelzro ok, good 18:38
then I'm starting to get it =)
benabik There might still be some step in between QAST and PIR. It used to be PAST --> POST --> PIR, but I don't know if there's a POST equivalent still. 18:39
(But that may not matter for you)
hoelzro it's good to know, but I'm just trying to get a higher level overview for now =) 18:41
hoelzro so when NQP is generating the PIR file for perl6-debug, it tries to load perl6_ops. Is that necessary when compiling to PIR? 18:43
benabik It's required for Parrot to parse the PIR, but I don't know if NQP needs it. 18:44
hoelzro hmm 18:45
that's what I thought
right now, nqp can't find perl6_ops, but I'm just compiling perl6-debugger.nqp to PIR, so it shouldn't matter, right? 18:46
benabik That I can't tell you. I know you can get type information and other things from the opcode library, but I don't know if NQP uses that. 18:47
benabik is far more familiar with the Parrot end of things.
jnthn The process is NQP code => .pir file with PIR in it => PBC. The nqp executable does the first step to give the .pir file, then Parrot takes that and produces the PBC 18:48
The .pir file gets .loadlib instructions due to --vmlibs. It needs to put those inot the PIR file, otherwise Parrot can't find the required op libs and do the PIR => PBC translation 18:49
('cus the debugger uses some of the perl6 dynops)
hoelzro right 18:50
the debugger is *basically* another implementation of perl6.exe, right?
just with some extra debug magic?
jnthn Yeah, it's another frontend basically 18:57
It subclasses various things
hoelzro ok, cool 18:58
benabik It's less another implementation than something that takes perl6.pbc and pokes at the innards with magic. :-D
grondilu just wrote rosettacode.org/wiki/Check_Machin-l...las#Perl_6 and is amazed that it's actually that easy. 19:02
rn: say tan(12*atan(1/18)+8*atan(1/57)-5*atan(1/239)) 19:03
oh yeas I forgot that there is no p6eval now 19:04
hoelzro what happened to it?
benabik Was it removed, or has it just crashed and not been punted?
diakopter I'm sure someone who knows how to fix it will fix it sometime soon 19:11
moritz is 19:12
benabik moritz++
moritz but I can't ssh into feather3 19:13
nor feather
it hangs
benabik That's no good. 19:14
jnthn moritz: Everyone connected through feather disappeared a bit ago 19:20
GlitchMr I cannot access feather HTTP server and December wiki doesn't work 19:36
Let me guess, somebody took all memory
benabik GlitchMr: feather seems to be down in general. 19:38
hoelzro can one not use say() in BEGIN blocks in NQP? 19:42
jnthn hoelzro: No
hoelzro: 'cus they don't know about their outer lexical scope 19:43
They were added with one very specific task in mind and do exactly as much as it needed.
timotimo should panda perhaps be taught how to access backup servers? 19:44
moritz the lasst hop that traceroute can reach is a3942.compukos.atom86.net 19:46
hoelzro hmm 19:48
that makes debugging NQP code very interesting... 19:49
jnthn hoelzro: nqp::say("...") works. 19:50
moritz: Yeah, I noticed that, but dunno what a normal traceroute looks like so have no idea how close to feather that is. 19:51
skids notably that hop returns an ICMP unreachable for feather3, but just dead air for feather. 19:52
Which would increase the likelihood that it is close to the end of the trace (local policy of somesort) 19:53
hoelzro I take it that 'use' in Perl6 runs code at compile time like it does in Perl5? 20:01
PerlJam hoelzro: aye
hoelzro I figured; that's why compiling the debugger is trying to find the ops file 20:04
PerlJam did anyone ping Juerd about feather?
hoelzro dammit, telling NQP to look in a particular directory for perl6_ops is *hard* 20:15
masak visitor stats spiked for the Advent Calendar yesterday, for some reason. 20:16
jnthn hoelzro: --vm-libs=path/to/look/in/perl6_ops won't work?
moritz r/programming top 20 or so
www.reddit.com/r/programming/commen...in_perl_6/ 20:17
masak oh!
cedrvint++ # piquing reddit's apetite
hoelzro jnthn: ...
hoelzro tries 20:18
timotimo ah, duh, modules.perl6.org is also on feather, no? 20:20
masak PerlJam: you're on for slot #22. do you have a topic yet?
timotimo the archive has a version :) 20:23
PerlJam masak: nope.
I have ideas. Nothing more yet. 20:24
I was going to sit down tonight and start on it though
(turning an idea into a post)
masak \o/ 20:30
masak is writing on tomorrow's post now
jnthn wrote all his posts so is working on something else :) 20:31
uvtc Hi #perl6. Regarding advent calendar topics, I was kinda hoping to see one covering the difference between parcels, lists, and arrays (or maybe I'm missing a piece in there somewhere). 20:32
I remember asking about docs on this back when ... lessee ... I think pmichaud may have given a talk on the topic. 20:33
But unfortunately the video was never made available (afaik).
hoelzro jnthn: amazingly, that didn't work 20:34
I totally expected it to!
uvtc er, just noticed, perl6.org is not responsive atm. 20:36
PerlJam blah 20:39
masak perl6.org is hosted on feather? 20:40
jnthn Think so
moritz feather2
moritz phenny: tell uvtc raw.github.com/perl6/doc/master/lib/List.pod raw.github.com/perl6/doc/master/lib/Parcel.pod have a bit documentation that might interest you 20:42
phenny moritz: I'll pass that on when uvtc is around.
PerlJam phenny: tell uvtc that pmichaud's talk on lists and parcels and stuff is at www.youtube.com/watch?v=rsccacoabaE 20:43
phenny PerlJam: I'll pass that on when uvtc is around.
PerlJam (at least I'm guessing that's the one he was looking for) 20:43
GlitchMr rosettacode.org/wiki/Extreme_floati...ues#Perl_6 20:48
Also, how many undefined values Perl 6 does have. 20:49
JavaScript has null and undefined, but how many Perl 6 does have? 20:50
PerlJam GlitchMr: +Inf :)
GlitchMr Copied this from C example 20:51
"Despite the name, the comma construct Parcels, not the parens... except for empty parens" - why it reminds me tuples in Python. 20:56
uvtc ih 20:57
phenny uvtc: 20:42Z <moritz> tell uvtc raw.github.com/perl6/doc/master/lib/List.pod raw.github.com/perl6/doc/master/lib/Parcel.pod have a bit documentation that might interest you
uvtc: 20:43Z <PerlJam> tell uvtc that pmichaud's talk on lists and parcels and stuff is at www.youtube.com/watch?v=rsccacoabaE
uvtc hi
Thanks for those links moritz & PerlJam.
Hm. I had been asking about that talk on June 18, and we couldn't find it anywhere. But the youtube page says it was published on the 15th! :) 20:59
moritz: aside from those, an intro-style doc on Lists/Parcels/Arrays would be most useful. Though, maybe after I watch the aforementioned video I can write one. :) 21:02
timotimo hm, how would i iterate over $foo and $bar and inside the body of my for loop change the value of the variable? do i bind it with a capture or something? 21:11
benabik Would something like for $foo -> $_ is rw { } work? 21:12
moritz for $a, $b <-> $x { $x *= 2 }
yes, that should work too
benabik Ooh, shorter syntax.
timotimo oooh, that's a cute syntax
moritz r: my ($a, $b) = (21, 8); for $a, $b <-> $x { $x *= 2 }; say $a, ' ', $b 21:12
grrr 21:13
ENOP6EVAL
IRC without evalbots seems so dysfunctional
timotimo cool :) 21:14
mathw o/ 21:16
moritz \o mathw
mathw congrats everyone doing the advent calendar this year, it's been great
I particularly enjoyed the one about phasers, I hadn't realised how they could let you express your concepts so robustly 21:19
timotimo indeed! that one was great
mathw I was reading it thinking 'I really wish I had these at work' 21:20
timotimo perl6 trades programming speed against execution speed in a big way :| 21:21
mathw that's not a design feature though, that's just the state of the current implementations :)
benabik Fortunitely compliers get faster much faster than programmers.
mathw and compilers written in Perl 6... :) 21:22
timotimo and programmers written ir perl6 ... 21:23
mathw not sure we're into that kind of AI yet
benabik I think use DWIM is currently delayed until Perl 7 21:24
jnthn I've at least had Perl 6 programs doing boring SQL programming tasks for me :P
mathw yeah but that's just common sense :) 21:24
jnthn Aw, dang :) 21:25
mathw even Lisps can do that :P
jnthn Yeah, but grammars were perfect for the task 21:25
mathw :)
masak mathw! \o/ 21:28
mathw oh hai masak
lichtkind PerlJam: last version is good? 21:29
timotimo is perlcabal.org also on feather? :\ 21:35
benabik Yup! 21:37
hoelzro more additions to the Perl 6 lexer for pygments! \o/
timotimo at least that way i learn the placings of all stuff on github as well
benabik Perl6 basically doesn't exist without feather, apparently.
timotimo hoelzro: got screenshots? :)
i'm really missing a file search function on github :\ (as in: grep through files) 21:38
hoelzro timotimo: hoelz.ro/files/perl6-pygments2.png 21:39
I've been focusing on Rakudo * building tonight, but I added POD and operators for the lexer
timotimo great, POD :)
the vim syntax for perl6 seems to struggle a bit with some of the comment syntaxes 21:40
timotimo syntaces? 21:43
hoelzro timotimo: I'm working on that as well =)
well, not the comments in particular, but Perl6 for Vim 21:44
at the moment, on folding
uvtc syntaxi 21:45
timotimo cool, i like that 21:49
timotimo huh, so you can do a "semicolon definition" of a class in rakudo, but not if you've stubbed another class before that? is that spec or bug? 22:01
sorear spec.
PerlJam timotimo: S12:52 22:03
timotimo thank you :) 22:07
right, that makes sense. 22:08
lichtkind PerlJam: last version is good? 22:15
PerlJam lichtkind: Dunno. I haven't read it. I just had a little free time earlier but I've mostly busy since. 22:16
lichtkind PerlJam: right just asking, its plenty time til 22 22:17
PerlJam lichtkind: also, if you're going to post it to the advent calendar, get some feedback from masak, moritz, jnthn, etc. too. :) 22:18
lichtkind PerlJam: sure i just dunno how submit it to this blog software that mainly why i sent it to you :) 22:20
timotimo i don't understand perl6 properly, so necromancing druid is kind of not working very well :| 22:25
tadzik feather is uP! \o/
timotimo \o/
benabik wb p6eval, dalek
timotimo r: class Base { has $!foo; }; class Other is Base { method test() { say $!foo; } }; Base.new.test 22:31
p6eval rakudo 22518b: OUTPUT«===SORRY!===␤Attribute $!foo not declared in class Other␤at /tmp/_LHxL1twwm:1␤------> ther is Base { method test() { say $!foo⏏; } }; Base.new.test␤» 22:32
timotimo so i'd have to use self.::Base.foo or something?
or turn $!foo into $.foo?
jnthn The latter 22:33
PerlJam timotimo: $!foo is private to Base. If you want to make it at least readable from Other, you'll have to make an accessor.
timotimo ok 22:34
sorear or trusts :D
jnthn heh, forgot about that :) 22:34
lichtkind jnthn: wanna look into my calendar text? 22:35
jnthn url? 22:36
PerlJam lichtkind: you might want to put it up on gist.github.com or something for others to view.
masak dudes and dudettes, I've written an advent post and scheduled it for tomorrow.
PerlJam masak++ 22:37
masak you will find it at the customary location.
reviews welcome.
lichtkind masak++
PerlJam: good iadea
masak I'm a bit tired tonight, so there are probably some errors here and there.
jnthn masak: OMGZ ITZ ALL RONG! 22:38
masak o.O 22:39
jnthn lol not rly :)
masak the degree of your seriousness was highlighted by your all-caps lolspeak. 22:40
lichtkind gist.github.com/4341223
lichtkind masak: did you put it on ghist? 22:41
masak no, it's in the Wordpress system, as a draft. 22:42
lichtkind can you please give me the link to that 22:43
i mean login page
i should have a account from last year
timotimo oh, wy was Term::ANSIColor not in the ecosystem any more? 22:44
jnthn masak: nice post :)
tadzik is it not? 22:45
modules.perl6.org/ /o\
masak jnthn: yay
tadzik oh noes, it's a-not there
masak lichtkind: the login page is linked from the main page of perl6advent.wordpress.com 22:46
diakopter it was in there wrongly
the github url was wrong
tadzik lies!
lichtkind thanks
diakopter [Coke] reported it a day or two ago
tadzik I still don't know which url was wrong
diakopter dunno, ask [Coke] 22:47
timotimo ah, ok 22:47
diakopter it had a :: instead of -
tadzik github.com/tadzik/perl6-Term-ANSIC.../META.info looks ok to me 22:48
tadzik and I see it in github.com/perl6/ecosystem/blob/ma...A.list#L12 alright 22:49
diakopter maybe I heard wrong; search the irclog
tadzik I remember asking questions, for I had no idea what's wrong :P 22:50
[Coke]! [Coke]!
lichtkind can perl6advent admin please add user lichtkind to edit rights 22:55
tadzik feather.perl6.nl:3000/module/Term;ANSIColor 22:56
seems to work
timotimo resolve stage failed for Rakudo::Debugger: Rakudo::Debugger depends on Term::ANSIColor, which was not found in the ecosystem 23:00
should it work without my intervention?
oh yes, panda update apparently 23:01
er, no, actually not
tadzik panda update should fix it 23:03
timotimo installed it manually and am now trying to do --nodeps for Rakudo::Debugger
strangely, the git repo couldn't be cloned. something must be off :|
timotimo turns out i was just short on RAM. 23:06
timotimo i'm just having no luck at all today, i'll try again tomorrow :| 23:10
masak 'night, #perl6 23:19
popl and god bless us, everyone 23:22