Parrot 3.6.0 "Pájaros del Caribe" released | parrot.org | Log: irclog.perlgeek.de/parrot/today | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 23 July 2011.
00:17 rurban_ joined 00:21 rurban left, rurban_ is now known as rurban 00:40 Limbic_Region joined 00:46 preflex_ joined 00:50 preflex left
cotto karma google 00:56
aloha google has karma of 1.
01:22 bluescreen joined, bluescreen_ joined
Felipe karma cotto 01:40
aloha cotto has karma of 895.
Felipe oh :)
01:43 contingencyplan left 01:54 bluescreen_ left, bluescreen left 02:14 daniel-s joined 02:56 soh_cah_toa joined 02:58 Limbic_Region left 03:01 davidfetter joined 03:10 soh_cah_toa left 03:30 TonyC_ is now known as TonyC 03:49 daniel-s left 04:23 daniel-s joined 04:26 daniel-s left, daniel-s joined 04:36 daniel-s left 05:30 daniel-s joined
dalek rrot/m0-spec: f1d207a | cotto++ | docs/pdds/draft/pdd32_m0.pod:
specify a way to efficiently refer to a chunk without looking it up at compiletime
06:19
rrot/m0-prototype: ddfc731 | cotto++ | src/m0/perl5/m0_assembler.pl:
avoid single-letter variable name
06:25
rrot/m0-prototype: 56fc846 | cotto++ | src/m0/perl5/m0_assembler.pl:
add a chunk map to the assembler
rrot/m0-prototype: 13296a1 | cotto++ | src/m0/perl5/m0_ (2 files):
add support for chunk name constants to M0 p5 prototype
rrot/m0-prototype: 83305c5 | cotto++ | src/m0/perl5/m0_interp.pl:
make debugging output a bit nicer
rrot/m0-prototype: 9fed493 | cotto++ | src/m0/perl5/m0_interp.pl:
fix chunk name constant translation
06:39
rrot/m0-prototype: 5701c99 | cotto++ | t/m0/integration/m0_chunk_name_const.m0:
add test containing chunk name constants

goto_chunk's semantics need to be changed before chunk name constants can be used, but updating the asssembler and interpreter to understand them was the hard part.
rrot/m0-prototype: 1fa6437 | cotto++ | t/m0/basic/hello_canon.m0b:
update hello_canon.m0b
06:51
rrot/m0-prototype: b72fdeb | cotto++ | / (2 files):
update semantics and test of goto_chunk
rrot/m0-spec: 426e71e | cotto++ | docs/pdds/draft/pdd32_m0.pod:
update spec of goto_chunk to use chunk indicies
rrot/m0-spec: ef29614 | cotto++ | docs/pdds/draft/pdd32_m0.pod:
add explanatory note to goto_chunk's description
06:52
rrot/m0-spec: 72e68e0 | cotto++ | docs/pdds/draft/pdd32_m0.pod:
make CHUNK a little easier to deal with
06:58
07:03 dodathome joined
dalek rrot/m0-prototype: 8cbac18 | cotto++ | / (2 files):
handle PC, RETPC and CHUNK as native ints

starts to fix poke_caller, but it's still not quite working
07:13
rrot/m0-prototype: 770cfd2 | cotto++ | t/m0/integration/m0_poke_caller.m0:
fix poke_caller; now it needs to spit out TAP so breaks are more obvious
rrot/m0-prototype: d2a2dca | cotto++ | t/m0/integration/m0_poke_caller.m0:
add TODOs for TAP output with examples to poke_caller
07:21
cotto only 2.5 hours later than I'd hoped to get to bed 07:29
cotto sleeps
07:39 fperrad joined 07:50 plobsing left
dalek parrot: de6610b | leto++ | META.json:
Make a valid META.json so that PGXN doesn't barf when we upload a distribution
07:58
08:03 jsut joined
dalek parrot: a588bd6 | leto++ | META.json:
According to pgxn.org/spec/ , it is spelled artistic_2. But PGXN says PL/Parrot is an invalid name, and that is over the line
08:03
08:07 jsut_ left
dalek parrot: f586ce2 | leto++ | META.json:
Improve the META.json to be presentable
08:13
08:17 rurban_ joined
dalek parrot: e2e79f6 | leto++ | README (2 files):
Convert readme to markdown
08:19
08:21 rurban left, rurban_ is now known as rurban 08:41 rblackwe_ joined, rblackwe left 08:49 lucian joined 09:26 lateau joined 09:27 slavorgn joined 09:38 contingencyplan joined
dalek kudo/nom: a50225a | moritz++ | / (3 files):
bring back rx// and :s adverb
10:23
kudo/nom: 44c8eeb | moritz++ | t/spectest.data:
more passing test files
10:37 NotFound_b left 10:49 mj41 joined 10:50 redicaps joined 11:09 Coke left 11:10 contingencyplan left 11:13 Coke joined 11:40 whiteknight joined 11:48 plobsing joined 11:52 davidfetter left 12:00 mj41 left
dalek kudo/nom: c15a26e | moritz++ | src/Perl6/Actions.pm:
enable m//, though without adverb checking and runtime adverbs
12:01
Felipe morning 12:15
12:28 ambs joined 12:36 rurban left 12:43 ambs_ joined, ambs left, ambs_ is now known as ambs
lucian is there a definitive way for checking PMC identity in parrot? 12:44
dalek kudo/nom: 5ee5857 | moritz++ | / (2 files):
enable runtime adverbs or m//, enable checks for valid adverbs
12:45
cotto lucian, are you looking for pir::typeof? 12:46
lucian cotto: no, that's object type. i want to check if two objects are the same 12:47
i'm using get_addr right now, but i'm not sure that's correct
cotto that was my next suggestion 12:48
12:58 Drossel left 13:06 Kulag joined
lucian cotto: ok, so it is correct 13:09
until there's a moving GC, i guess
cotto sadly, there's not much risk of that happening soon 13:10
13:13 kid51 joined 13:16 mj41 joined
dalek rrot/m0-prototype: 20dfbde | cotto++ | t/m0/integration/m0_poke_caller.m0:
convert some of poke_caller's output to useful TAP
13:16
kid51 msg andrew12 If you have questions or feedback on my talk at FOSSCON yesterday send them to jkeenan at cpan dot org.
aloha OK. I'll deliver the message.
13:18 plobsing left
lucian wishes for if-let or ?. in winxed 13:22
13:25 mj41 left 13:31 davidfetter joined 13:36 mj41 joined 13:43 davidfetter left 14:04 davidfetter joined 14:11 mj41 left
dalek website: jkeenan++ | Parrot 3.6 Release Quotation Contest Is Over 14:18
website: www.parrot.org/content/parrot-3.6-r...ntest-over
14:21 mj41 joined
kid51 msg Coke Looks like Smolder is stuck again. Can you restart? 14:33
aloha OK. I'll deliver the message.
kid51 msg Coke Please cancel restart request. Looks like this was more a timeout error on my end. 14:37
aloha OK. I'll deliver the message.
kid51 msg whiteknight One test failure in whiteknight/imcc_tag branch: smolder.parrot.org/app/projects/rep...ails/18770 t/pmc/packfileview.t 14:39
aloha OK. I'll deliver the message.
nopaste "kid51" at 192.168.1.3 pasted "t/pmc/packfileview.t: one failure in imcc_tag branch" (24 lines) at nopaste.snit.ch/64284 14:40
dalek TT #849 closed by jkeenan++: OS.pmc - update file times 14:44
TT #849: trac.parrot.org/parrot/ticket/849
14:49 janus` is now known as janus
kid51 We're PASSing in master on linux/i386 and darwin/ppc 15:10
whiteknight lucian: get_addr is not correct. 15:14
lucian: we don't have a very good mechanism for getting the memory location of a PMC, yet 15:15
lucian: winxed uses a particular op, I need to look it up, for it's === operator
lucian whiteknight: right. and that's identity. i'll look up what it compiles to 15:16
15:16 whiteknight left 15:17 whiteknight joined
whiteknight The issame op looks like it 15:17
issame a, b, <lbl>
where <lbl> is a PIR label to jump to
15:21 redicaps left 15:29 kid51 left 15:31 preflex joined 15:34 preflex_ left 15:39 lucian_ joined 15:42 lucian__ joined 15:43 lucian left 15:45 lucian_ left 15:49 thundergnat joined
thundergnat TT #849 closed by jkeenan++: OS.pmc - update file times - This makes me vaguely sad, though I understand the reasons. 15:50
Without that it will make transitioning to a perl 6 based build system for perl 6 sub optimal. 15:51
There's plenty of other more important stuff that needs the attention right now though. 15:52
15:54 lateau left
thundergnat Ah well, hopefully it's less a wontfix and more a wontfix right now. 15:56
15:56 thundergnat left 15:58 mj41 left 16:04 GodFather joined 16:23 theory joined 16:26 theory left 16:37 rblackwe_ is now known as rblackwe
whiteknight prog21.dadgum.com/54.html 16:39
dukeleto ~~ 17:39
PL/Parrot and PL/Perl6 are now on PGXN: pgxn.org/dist/plparrot
dalek sella: e401b95 | Whiteknight++ | src/unstable/template/node/Factory.winxed:
Cleanups in Template.Node.Factory
17:52
sella: 616ba71 | Whiteknight++ | src/ (13 files):
Add forward-declarations for some String library functions. Refactor Template.Node.Factory and Template.Handler.Factory to expose more logic to easy configuration and subclassing. General cleanups throughout
whiteknight dukeleto: I want to devote some time this coming week to try and get PL/Parrot running again
17:54 Kulag left
whiteknight I've done my fair share of breaking it 18:07
18:13 Kulag joined 18:29 mj41 joined 18:34 contingencyplan joined 18:36 bubaflub joined
bubaflub ~ 18:36
18:43 soh_cah_toa joined 18:52 theory joined 19:10 theory left 19:11 Kulag left
dalek rrot-gmp: b218da1 | bubaflub++ | docs/tutorial.md:
slight fixup to tutorial
19:12
19:41 Kulag joined
dalek kudo/nom: e5d914c | moritz++ | / (3 files):
implement &samecase
19:46
kudo/nom: 0376f99 | moritz++ | src/core/Str.pm:
implement :x in Str.match
website: bubaflub++ | Parrot-GMP: Hiatus while I move across town 19:48
website: www.parrot.org/content/parrot-gmp-h...cross-town
cotto ~~ 20:16
Felipe ~~
20:22 fperrad left
whiteknight ~~ 20:38
20:41 dodathome left
dukeleto ~~ 20:45
dukeleto waves from PDXPug day 2011
bubaflub hello whiteknight and dukeleto
dukeleto bubaflub: werd up
whiteknight 'ello 'ello
bubaflub whiteknight: how's the house situation?
dukeleto: how's the conference? 20:46
whiteknight unchanged, which is good. We're still on course for settlement on thursday
dukeleto bubaflub: just got hear, listening to theory++ talk about PGXN
bubaflub whiteknight: very nice. we (my wife and i) just moved friday. glad that's done with.
dukeleto bubaflub: congrats
bubaflub dukeleto: thanks. it's just across town, but it was a major pain. heat index around 100 on friday. no bueno. 20:47
dukeleto bubaflub: have you thought about porting Math::Primality to Parrot, using parrot-gmp ?
bubaflub dukeleto: i have. should be straightforward - famous last word.
s 20:48
dukeleto bubaflub: indeedably
bubaflub++ # blogging
bubaflub dukeleto: my plan for Parrot-GMP is to finish the tutorial and docs, try to get more examples, try to get examples in Rakudo, and maybe refactor the test suite. 20:49
dukeleto: for that last one i'm thinking that's another script that would be useful for you and jay++
dukeleto bubaflub: did you have other goals listed in your gsoc app?
bubaflub dukeleto: nope. more tutorials / examples in other HLLs is really all that's left. 20:51
dukeleto: i've got to figure out where to install the NCI thunks, but they are already correctly generated from setup.winxed. which is sweet.
dukeleto: maybe i can backport some of that to distutils or write some tests for that.
dukeleto bubaflub: of the things that you have left, I think user-friendly docs/tutorials/examples are more important than refactoring tests 20:55
bubaflub: of course you can do both, but if you have to choose, docs/tutorials first
bubaflub dukeleto: agreed. i'm working on fleshing out the tutorial this week, and adding some more POD to the src files. once that is done i'll get some more examples in Winxed and NQP into the repo.
dukeleto bubaflub: awesome! 20:57
bubaflub dukeleto: is this something we'll want to merge into parrot / dual-life it? or just keep it on Plumage?
dukeleto bubaflub: i think i may need some of your tuits to get unstuck in parrot-libgit2, but only after you are "done-ish" with gsoc 20:58
bubaflub dukeleto: definitely. i'd love to help out with that.
dukeleto bubaflub: i think parrot-gmp may get snapshotted into core, because Rakudo and other HLL's will want access to it 20:59
bubaflub dukeleto: that's what i was aiming for.
dukeleto bubaflub: but i mostly see it being developed outside of core, installed via plumage, etc... 21:00
bubaflub dukeleto: my aim with the test refactor was to make adding the two other classes of functions (the rational and decimal stuff) easier and less intensive - writing all those tests was the most time intensive part.
dukeleto bubaflub: sure, that is a good reason to refactor test infrastructure 21:01
bubaflub dukeleto: great. i'll open up some github issues with what i'm thinking about. 21:03
21:03 benabik left
dalek sella: 93235c3 | Whiteknight++ | src/unstable/template/Context.winxed:
Template.Context has a hash-like interface for keyed get/set
21:03
sella: bc60297 | Whiteknight++ | / (3 files):
Cleanups and fixes to Template.Node.Eval. Add tests for it
sella: c92eb3a | Whiteknight++ | src/unstable/template/ (10 files):
Pass the engine around during render, to make sure all nodes have access to it. Use the same engine recursively in file includes. Several other misc cleanups
sella: 20816fe | Whiteknight++ | src/unstable/template/ (15 files):
+docs and fixes
21:03 particle joined 21:07 particle1 left 21:08 bubaflub left
lucian__ is beginning to hate more and more bits of parrot 21:12
21:12 lucian__ is now known as lucian
dukeleto lucian: what is biting you today? 21:12
lucian dukeleto: right now, backtraces 21:13
also, i'm either misunderstanding how overriding vtable functions works, or something's broken somewhere 21:14
s/works/work/
dukeleto lucian: probably both 21:15
21:20 GodFather left
whiteknight lucian: what about backtraces is upsetting you? 21:24
lucian whiteknight: i can't figure out who's calling who where
i understand why i can't, but it's very frustrating 21:25
21:25 ambs left
lucian is there a MRO resolver in parrot i could use? 21:25
whiteknight what do you mean? 21:27
lucian could i use the Class/Object MRO resolver without Class/Object? 21:28
hmm, "MRO resolver" is redundant. MRO implementation
dalek kudo/nom: b6150b2 | moritz++ | src/core/Str.pm:
implement limit for Str.comb
21:29
kudo/nom: 3867e02 | moritz++ | src/core/Str.pm:
since the loop in Str.match is not lazy anymore, use push instead of gather/take; might be faster
kudo/nom: 0cbd875 | moritz++ | src/core/ (2 files):
implement limit for Str.split
21:30 theory joined
lucian whiteknight: so Class/Object does something to determine method resolution order. can i use that separately, since i've built my own object system? 21:30
21:39 mj41 left
whiteknight lucian: Ah. I don't think so 21:41
let me look
21:43 Psyche^ joined
whiteknight $P0 = inspect myClass, "all_parents" 21:44
that returns an array of parents in MRO order
oh, it returns a clone. Not the actual MRO object 21:45
er, MRO array
that sucks 21:46
21:48 Patterner left, Psyche^ is now known as Patterner
whiteknight lucian: What do you need to do differently with the MRO? 21:50
lucian whiteknight: well, i can't use the actual Class MRO, since all python classes are instances of a single parrot Class 21:52
whiteknight lucian: You can do an override on find_method VTABLE, and do a custom lookup
lucian so i need to either implement my own MRO (which i'm in the process of doing, while swearing at odd traces), or somehow use Class's MRO implementation on something other than a Class
whiteknight: right, that's what i'm writing. i was wondering if i'm wasting time 21:53
whiteknight Class's MRO is very easy: It takes that all_parents array, and loops over it, asking each one for the method
no, that's "the way"
lucian whiteknight: ok 21:54
python's is just slightly more complicated, with MI and all
whiteknight ok
lucian goes to eat, to worry about traces later
whiteknight Parrot supports multiple inheritance
dalek p: 9fe040c | pmichaud++ | src/HLL/Compiler.pm:
Eliminate $!commandline_{banner|prompt}, replace with interactive_* methods.
21:57
p: 9573361 | pmichaud++ | src/HLL/Compiler.pm:
Refactor HLL::Compiler.command_line so that compilers can more easily intercept argument processing.
kudo/nom: fedd5b3 | pmichaud++ | / (4 files):
Add initial version of @*ARGS.
21:59
lucian whiteknight: right, then how is all_parents constructed? 22:04
22:05 bluescreen joined
whiteknight lucian: C3 linearization 22:07
src/oo.c:Parrot_ComputeMRO_C3()
so, it's C level.
lucian whiteknight: right. so no easy way to call it 22:09
22:22 ascent left 22:47 benabik joined, benabik left
dalek rrot/m0-prototype: 645b8ca | cotto++ | t/m0/ (2 files):
finish making poke_caller output TAP, add it to integration tests
23:04
23:05 davidfetter left 23:06 soh_cah_toa left 23:45 soh_cah_toa joined