13:14 -!- autrijus [~autrijus@220-132-132-105.HINET-IP.hinet.net] has joined #parrotsketch
13:14 due in 1hr?
13:15 obra: hi, btw.
13:45 -!- Nicholas [~nwc10@colon.colondot.net] has joined #parrotsketch
13:47 greetings Nicholas-san
13:48 hello
13:48 I'm finally finishing up gruesome $work tomorrow.
13:48 so less workload and more time for pugs.
13:49 and less AIX?
13:49 and less AIX. parsec + catalyst proved to be a very effective combination of manipulexity and whipuptitude.
13:49 I just feel shattered
13:49 with sqlite3 being the common interchange.
13:49 candice (blech's wife) noticed this afternoon
13:49 shattered how?
13:49 I think I need a break. Er, I know I need a break
13:49 tired. burnt out
13:49 ^C
13:49 I just need to coax Mark into agreeing
13:50 problem is he seems shattered
13:50 he went home with a cough
13:50 oh. you may need ^\ then.
13:50 but he was ill on Friday with a massive headache
13:50 and he's not been seeming very with it recently
13:50 yow.
13:52 this neko thing helped me put things in perspective.
13:52 in what way? It's another VM, isn't it?
13:52 aye, but one with less maturity and forethought
13:53 oh ah right. How so?
13:53 I'm also playing with YARV.
13:53 well, the author thinks neko is a much higher level vm than parrot
13:53 mostly because PIR doesn't handle nested expressions and neko's does.
13:53 -!- leo_ [~lt@ts3-126.twistspace.com] has joined #parrotsketch
13:53 a small matter of a parser?
13:54 hm, not really, because you need an internal language too.
13:54 the rumoured past thing
13:54 -!- mdiep_ [~mdiep@cpe-24-194-223-228.nycap.res.rr.com] has joined #parrotsketch
13:54 which the python guys said they are working on...
13:54 (hi, leo_, mdiep_)
13:54 hi all
13:54 hello
13:55 idly chattering about this neko thing
13:55 and how it helped me put things back to perspective (to parrot's advantage) :)
13:56 hm. we still have 5mins to go till the meetings starts
13:56 obra: you there?
13:57 <@obra> hi
13:57 <@obra> <- Just arrived at the airport
13:57 *At* the airport?
13:57 <@obra> Yes.
13:57 you're flying out somewhere else?
13:57 <@obra> I've staked out a table in the food court.
13:57 <@obra> I'm on my way home from foo
13:58 obra: foo fun?
13:58 ah oh right. I'd actually assumed that you flew back last night
13:58 clearly not. THere isa post foo party?
13:58 -!- chromatic [~chromatic@sub17-30.member.dsl-only.net] has joined #parrotsketch
13:58 <@obra> Yes. me and a soft bed with a pillow in a hotel room.
13:58 <@obra> It was a great party. I slept through the whole thing ;)
14:01 <@obra> So anyway, Hello everyone.
14:01 Bonjour.
14:01 <@obra> Patrick is travelling for work. And chip is in the middle of an unemployemnt hearing.
14:01 <@obra> But both assure me that they'll be here to hassle next week.
14:01 w.r.t. old employer?
14:01 <@obra> Nicholas: yes.
14:01 -!- #parrotske chromatic H 1 ~chromatic@sub17-30.member.dsl-only.net [chromatic]
14:01 -!- #parrotske obra H@ 0 ~jesse@69.25.201.132 [Jesse]
14:01 -!- #parrotske mdiep_ H 1 ~mdiep@cpe-24-194-223-228.nycap.res.rr.com [Matt Diephouse]
14:01 -!- #parrotske leo_ H 1 ~lt@ts3-126.twistspace.com [Leopold Toetsch]
14:01 -!- #parrotske Nicholas H 1 ~nwc10@colon.colondot.net [Nicholas Clark]
14:01 -!- #parrotske autrijus H 1 ~autrijus@220-132-132-105.HINET-IP.hinet.net [Autrijus Tang]
14:01 -!- End of /WHO list
14:02 Good (I think/hope) as I'd hope it ought to move things onwards. However, that's really sort of off topic
14:03 so. topics?
14:03 <@obra> So, I guess the thing to do is to run this sort of like the design meetings. Everybody gets a chance to describe what they've been
up to for the past week or so and raise issues they're running into.
14:04 <@obra> Then a general "other business" section.
14:04 <@obra> Somebody, usually me or chromatic will moderate.
14:04 <@obra> I'll take it for today ;)
14:04 * chromatic naps
14:05 <@obra> If there's anything that you need to tell someone here that's not fit for public consumption, it should probably _not_ be done as
part of the meeting proper where everyone can see it.
14:05 <@obra> If any of the ground rules I'm laying out feel not-ok to someone, bring them up with me and we'll figure out how to fix it.
14:05 <@obra> So. Who wants to go first?
14:06 roll a 1d4?
14:06 <@obra> I pick...Nicholas
14:06 <@obra> How's the Ponie?
14:06 very little has happened in the past 2 weeks.
14:06 @work, and that hasn't progressed much either.
14:07 <@obra> Aside from work pressure, what's ponie currently stalled out on?
14:07 I have some specific questions I asked to p6i some time ago, that Leo partly answered, but I think we're waitng on the great
designer to comment. And he's probably synthesising designs in his head
14:08 The only other specific thing is that I'd like to find some way to make the DOD registry code accessible, so that I can make a
PMC (or somesuch) that shares most of the implementation with it, but has 1 additional feature - let you read
the "reference" count.
14:08 For ponie to track perl's reference counts. (All reference counts currently, external XS code reference counts only in the long
term)
14:08 What's the minimal design of the DOD registry that you need to make this work?
14:08 <@obra> (Other people should feel free to jump in and ask or answer questions during a report, so long as you're not cutting off the
speaker. If it gets too off track, I'll say something)
14:09 It's a technical "I can't see how to refactor dod_register_pmc and dod_unregister_pmc (in pmc.c in parrot)
14:09 Nicholas: interface Parrot_get_dod_registry_hash()
14:09 cleanly, so that the current code can keep on using interpreter->DOD_registry
14:10 leo_: where is that?
14:10 tbd
14:10 but should be enough
14:10 OK. I'd sort of assumed that I was doing it
14:10 OK. BUt the next bit is that I'm not quite sure of the best (PMC) interface to hang on it.
14:11 niggly detail. I was going to ask Norman today at work, but we he was abducted by meetings
14:11 How much of the Ponie code needs to touch the interface?
14:11 it's a Hash PMC, which has all the access vtables
14:12 (except that the hash keys are PMC addresses)
14:12 The Ponie code wants to be able to register and unregister PMCs into a hash tracking the number of registers/unregisters. But in
a different PMC
14:13 Can you do all of this from a single place in Ponie code?
14:13 so time for a new IdHash PMC?
14:13 Or at least behind a single macro?
14:13 leo: I think yes.
14:13 chromatic: yes, it's all going to sit behind SvREFCNT_inc and SvREFCNT_dec and SvREFCNT
14:13 ok - select a proper name and I hack it in
14:13 leo: gah. yhou would leave *me* with the hard problem :-)
14:14 *g*
14:14 I say go for the simplest, easiest to implement interface right now and make it nicer if and when it needs to be nicer.
14:14 the interface is already there see also classes/hash.pmc
14:14 I agree. But I wasn't sure what vtables I had access to quickly pass in PMCs as keys.
14:15 get_pmc_keyed, set_pmc_keyed
14:15 ah. OK. D'oh. yes. takes a PMC
14:15 both take a PMC - the address will be they key
14:15 leo_: but wouldn't it just serialize the key PMC with VTABLE_get_string?
14:16 yes - therefore we need a new hash class
14:16 and iirc p5 PMCs doesn't stringify to their addresse
14:16 <@obra> (Is this productive? Should we keep going on reports or finish this off?)
14:17 I think it's done - 'IdHash'
14:17 <@obra> Cool.
14:17 <@obra> Nicholas: anything else, before I pick on someone else?
14:17 I think it's done
14:17 or 'NickHash' ?
14:17 I can't think of anything else for this week
14:17 <@obra> Ok.
14:18 leo_: PtrHash
14:18 ;)
14:18 Sorry for going on a bit
14:18 <@obra> mdiep_: What have you been up to?
14:19 -!- mdiep_ [~mdiep@cpe-24-194-223-228.nycap.res.rr.com]
14:19 -!- ircname : Matt Diephouse
14:19 -!- channels : #parrotsketch
14:19 -!- server : irc.hellyeah.org [Sporks flying from the west.]
14:19 -!- End of WHOIS
14:19 ParTcl's moving along pretty well. I've been rewriting the support for Tcl's [expr] command.
14:19 but
14:19 I have some issues coming up wrt different conventions
14:20 for instance, the proper way to store the list of exportable/imported commands in different namespaces. (basically, how do we storethe info we need in a way that doesn't eliminate interoperability?)
14:21 chip suggested I investigate different languages and come up with a proposal
14:21 mm link sets.
14:21 <@obra> Is that turning out to be doable?
14:21 obra: allowing interoperability? I don't know
14:22 <@obra> I was actually talking about the survey ;)
14:22 obra: ah. :-) it should get done in the next 2 weeks, I hope.
14:22 <@obra> Cool.
14:22 mdiep_: this is a nice collection of module/export theories: http://readscheme.org/modules/
14:23 <@obra> Anything else exciting going on in your ParTcl/parrot hacking?
14:24 I think that's it at the moment.
14:25 <@obra> Ok.
14:25 <@obra> Autrijus?
14:25 well, there's more action on p5/js/hs than on pir
14:25 I'll pick the relevant to parrot parts
14:26 we've been working on rationalizing the lexical pad and related semantics
14:26 previously I found parrot's lexpad implementation to be unworkable
14:26 and leo mentioned it'd better be scrapped off and replaced with a directly-point-to-registers scheme on a variable sized registerframe
14:27 yep
14:27 the current design hoists lexical pad off each closure entry
14:28 so essentially { ...; my $a; ... } lifts $a to top. similarily, "... ; sub foo; ... " lifts "our &foo" to package entry, which isa closure
14:28 however, chip said he'd like to work out an alternate lexical var declaration design
14:29 so inner blocks won't need become full closures
14:29 since that will affect pir surface syntax, I'd need the general design idea before progressing forward
14:29 but no information on that front yet
14:29 however, is it any more than an optimisation in terms of what gets created?
14:29 and the varreg frame code is iirc also not yet checked in, so currently we're a bit stalled.
14:30 (since the last p6-pir spike stopped on the general brokenness of lexical pads)
14:30 -!- #parrotske chromatic H 1 ~chromatic@sub17-30.member.dsl-only.net [chromatic]
14:30 -!- #parrotske obra H@ 0 ~jesse@69.25.201.132 [Jesse]
14:30 -!- #parrotske mdiep_ H 1 ~mdiep@cpe-24-194-223-228.nycap.res.rr.com [Matt Diephouse]
14:30 -!- #parrotske leo_ H 1 ~lt@ts3-126.twistspace.com [Leopold Toetsch]
14:30 -!- #parrotske Nicholas H 1 ~nwc10@colon.colondot.net [Nicholas Clark]
14:30 -!- #parrotske autrijus H 1 ~autrijus@220-132-132-105.HINET-IP.hinet.net [Autrijus Tang]
14:30 -!- End of /WHO list
14:30 <@obra> *nod*
14:30 <@obra> Anything else?
14:31 Nicholas: yes, but chip notes that (if {}) and (for {}) creating closures is suboptimal
14:31 but it's currently the only way it can work in pir that I know of. so he said he'd improve it
14:31 In P6 or Parrot?
14:31 chromatic: in parrot. p6 is just this syntax thing :)
14:32 chromatic: currently I have &statement: dispatching into closures.
14:32 (as the spec demands, in a naive implementation)
14:32 he'd like to labelify it or something, but also have lexicals hangable onto labels.
14:32 but since chip's not here, not much point digressing further :)
14:33 how sweet. a 30 second ADSL outage that then buggers this ssh connection.
14:33 ok. in other news, Devel::TypeCheck is fun, I'm working on doing the same for PIL2, and I wonder if PIR can be subjected to a
similar treatment.
14:34 I'll post to my journal and p6[ic] as usual when I have concrete results.
14:34 <@obra> Very neat.
14:35 nothing much else wrt parrot. the short term focus is getting p6 compiled to p5 and work with native p5 objects in reasonable
speed.
14:35 end of briefing
14:35 <@obra> Leo, what have you been up to of late?
14:35 first the two google SoC folks
14:36 Curtis Rawls is working on imcc & optimizations
14:36 we have also specced a plan to get register allocation running for the new scheme
14:37 the other guy is Nattfood - Alexandre Buisse
14:37 working on a generational mark & compact GC scheme
14:38 this is a real hard job as this also introduces variable sice PMC bodies
14:38 AFAIK now make test passes almost again
14:38 <@obra> *nod* I'm impressed that students are able to handle things like this over a summer.
14:39 yeah, it was a bit a slow start with Nattfood but now he is doing well
14:39 I'm mainly waiting for Chips approval of mergin branches/leo-ctx5 back to trunk
14:40 and braining the hacks thereafter
14:40 <@obra> "braining"?
14:40 i.e. variable siced register frames, lexicals, ...
14:40 pondering
14:40 <@obra> *nod*
14:41 that's it
14:41 How scary is the merge?
14:42 It'll be not a real merge as I've merged all from trunk into the branch
14:42 tcl needs some work then an py*.pmcs
14:42 <@obra> Are you suing svk?
14:42 <@obra> using.
14:42 tewk is working on the latter
14:42 no svn
14:42 <@obra> *nod*
14:43 <@obra> That makes the merge case much less trivial.
14:43 coke and I will be jumping on the tcl work as soon as the code is merged.
14:44 <@obra> Ok. Chromatic, anything perpl6/parroty from your end?
14:44 obra: well, if it's simpler with svk someone with svk can merge it
14:45 I added test_pass() and test_fail() to Test::Builder::Tester in both Parrot and Perl 6. That should make testing test modules
easier.
14:45 I have some draft code for Test::More in Perl 6, but I ran into a design issue from my side that I want to think through a
little bit more.
14:46 The only other bit of Perl 6 I'm waiting for is metamodel visibility so I can do introspection on method attributes, which will
allow me to write Test::Class.
14:47 chromatic: MM visib as in .meta ?
14:47 Specifically being able to inspect traits on methods.
14:47 you willing to work with runjs/runp5 instead of the default runhs?
14:47 method test_ctor is test(4) { ... };
14:48 I could work with runp5 for now.
14:48 ok. so you need a "test" role
14:48 and we need parse and gen support for trait_auxiliary:is
14:48 that's all, right?
14:49 Pretty much.
14:49 can you write out the test role and check it in to ext as an example?
14:49 that way people are better motivated to make things pass
14:49 Not without some research. Is there another good example of the syntax somewhere?
14:50 I see a t/oo/traits/basic.t and a t/oo/traits/parameterized.t
14:50 but really all my knowledge comes from s12.
14:50 Mine too.
14:50 I understand how to use it, but not the ideas behind how to write it.
14:51 oh! but I suppose that was your fault?
14:51 I mean the entire role/trait/mixin thing
14:51 <@obra> So. We've got about 10 more minutes. Is there anything else that needs to get addressed this week?
14:51 Roles yes, traits no.
14:51 chromatic: ok. see if the two .t in traits is sane, and mockup it with T::C
14:51 and I'll try to work with putter, fglock, stevan et al to get it running on runp5
14:52 Thanks.
14:52 np. you are the most demanding motivation for most 6.28.0 features :)
14:53 With Test::Class, we can write LambdaCamelMoo, so that's really important.
14:53 "Moo" ?
14:54 Like a Mud, but more cow.
14:54 Moo, as in unix.
14:54 <@obra> So. With luck, next week, we'll have patrick and chip around and all of the "questions for the designer" can be thrown at him :)
14:54 in one hour :-)
14:54 although I'm not sure what my connectivity will be like, as I'm in Braga
14:54 <@obra> I hope this is/ends up being useful for you guys. If it turns out to be a hassle or just not useful, please do say so.
14:55 yeah, I'd love to see the code of the s/r parser pm demo'ed in oscon.
14:55 <@obra> leo_: we can help you configure an IRC client to stream questions as fast as your ISDN can carry them.
14:55 getting an hour with chip every week should help. :-)
14:55 obra: np I got DSL already
14:55 obra: leo is enjoying pervasive wireless.
14:56 <@obra> leo_: nice. then it's a matter of not getting the IRC server to boot you for flooding.
14:56 <@obra> I should run along and find food before my flight. anything else before I go?
14:56 <@obra> Does someone want to mail out the irc log to the whole CC list (Which I'll get robert to turn into a real list)
14:56 they don't give you food on your flight? :-(
14:56 obra: thanks for organizing the meeting
14:57 <@obra> np.
14:57 <@obra> Nicholas: not in coach anymore.
14:57 <@obra> Nicholas: if I manage an upgrade, I get very good food, though
14:57 http://autrijus.org/tmp/ps0.log
14:57 <@obra> autrijus: thanks
14:57 interesting. They've learned tricks from the budget airlines
14:57 and yes, thanks for herding everyone to this meeting
14:58 either that or you're flying B.A. :-)
14:58 <@obra> If it helps, I'll be happy. My "job" is to listen to people tell me what's making it hard for them to create parrot/perl6/etc and
then make those obstacles disappear.
14:59 autrijus: you mentioned Neko at the beginning - and influences on p6/parrot
14:59 * obra -> gone. *wave*
14:59 * mdiep_ -> also gone.
15:01 -!- chromatic [~chromatic@sub17-30.member.dsl-only.net] has quit [Quit: (lunch)]
15:01 leo_: back to #parrot
15:02 ok