Perl 6 - the future is here, just unevenly distributed

IRC log for #parrotsketch, 2009-04-07

| Channels | #parrotsketch index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:04 cotto joined #parrotsketch
00:05 Tene joined #parrotsketch
05:00 eternaleye_ joined #parrotsketch
05:02 eternaleye_ Hi, I asked this question in #parrot, and cotto++ pointed me here: Are there any plans for an API to access the AST for HLL code from an embedding program? I could see it being immensely useful for, say, syntax hilighting. Especially the Declaration-Use Chain  stuff the KDevelop guys are doing.
06:12 rin1024_ joined #parrotsketch
06:18 cotto pasting my report now because I won't be there Tues and I won't care to post it when I wake up.
06:18 cotto * removed obselete and bitrotted PMC_DATA_IN_EXT
06:18 cotto * finished *ManagedStruct ATTR conversion
06:18 cotto * started converting MULTI methods to VTABLE functions (TT #452)
06:18 cotto - would appreciate feedback on the submitted patch before I barge ahead
06:18 cotto EOR
06:29 Tene_ joined #parrotsketch
08:03 particle joined #parrotsketch
11:45 rin1024__ joined #parrotsketch
12:53 PacoLinux joined #parrotsketch
12:55 PacoLinux left #parrotsketch
14:42 davidfetter joined #parrotsketch
14:43 particle1 joined #parrotsketch
15:28 Tene joined #parrotsketch
15:37 rdice joined #parrotsketch
15:49 masak joined #parrotsketch
16:09 masak joined #parrotsketch
16:09 masak will miss tonight's meeting, so posting my (short) report now:
16:10 masak * submitted 11 rakudobugs since last week
16:10 masak * implemented IO.ins in Rakudo
16:10 masak * worked on November, Druid, proto and Web.pm
16:10 masak EOR
17:28 PacoLinux joined #parrotsketch
17:32 eternaleye joined #parrotsketch
17:34 jonathan joined #parrotsketch
17:45 gravity joined #parrotsketch
17:46 Util joined #parrotsketch
17:48 Infinoid joined #parrotsketch
18:14 NotFound joined #parrotsketch
18:15 barney joined #parrotsketch
18:17 jhorwitz joined #parrotsketch
18:18 particle- joined #parrotsketch
18:25 fperrad joined #parrotsketch
18:28 allison joined #parrotsketch
18:29 chromatic joined #parrotsketch
18:30 moritz OH HAI
18:30 fperrad hello
18:30 chromatic Good $localtime
18:30 Infinoid OHAI
18:30 pmichaud joined #parrotsketch
18:30 barney hi
18:30 pmichaud hello.
18:30 NotFound hola
18:30 jonathan OH HAI
18:31 * cotto is here (contrary to what he thought earlier)
18:31 Util hi
18:31 jhorwitz hi
18:31 chromatic Shall we begin?
18:31 chromatic allison?
18:32 allison Parrot:
18:32 allison - Revamping the calling conventions from the roots up (rather than patching the existing implementation). About to commit that to a branch.
18:32 allison Pynie:
18:32 allison - Started the conversion to 3.x.
18:32 allison - Finished porting Pynie's bootstrapping tests to SubUnit.
18:32 allison EOR
18:32 chromatic barnie?
18:32 chromatic er, barney?
18:32 barney nothing to report
18:32 barney .endnor
18:33 chromatic I just branched to move source files into subsystem directories.  I'm working on src/interp/ first.
18:33 cotto * removed obselete and bitrotted PMC_DATA_IN_EXT
18:33 cotto * finished *ManagedStruct ATTR conversion
18:33 cotto * started converting MULTI methods to VTABLE functions (TT #452)
18:33 cotto - would appreciate feedback on the submitted patch before I barge ahead
18:33 cotto sorry for the fat-fingering
18:34 chromatic fperrad?
18:34 fperrad * patch for linking with an installed Parrot (see TT #535),
18:34 fperrad need test on various platform
18:34 fperrad * import Cardinal on https://svn.parrot.org/languages/cardinal
18:34 fperrad * Lua blocker : RT #59968 ~ TT #472 (segfault when catching an exception from C)
18:34 fperrad EOR
18:34 chromatic Infinoid?
18:35 Infinoid Did some cage cleaning.
18:35 Infinoid Cleaned up a little code redundancy in the sockets stuff, and applied some more nice patches from bacek++.
18:35 Infinoid Fiddled a little with headerizer, with Coke++.
18:35 Infinoid 1;
18:35 Infinoid Fiddled a little with jit, with cotto++.
18:35 chromatic japhb?
18:36 chromatic jhorwitz?
18:36 jhorwitz [meta] been on hiatus for a couple months due to $DAYJOB, but things are slowing down now.
18:36 jhorwitz [mod_parrot] concentrating now on stabilizing mod_parrot and mod_perl6 for PVMW and YAPC::NA
18:36 jhorwitz [foundation] spent lots of quality time with our accountants re: taxes.
18:36 jhorwitz that's all for now.  EOR
18:37 chromatic moritz?
18:37 moritz * helped pmichaud++ to get parallel testing back into Rakudo
18:37 moritz * applied some patches
18:37 moritz * wrote and reviewed Perl 6 tests
18:37 moritz * reviewed google summer of code applications. Speaking of which, there are two fine looking parrot proposals in there (llvm jit and wrapping libdecnum). We need mentors for them! Contact dukeleto if you volunteer
18:37 Coke joined #parrotsketch
18:37 moritz EOR
18:37 chromatic Coke?
18:38 Whiteknight joined #parrotsketch
18:38 Coke come back to me?
18:38 chromatic NotFound?
18:38 NotFound Busy this week, just one bug fix
18:38 NotFound EOR
18:39 chromatic particle?
18:40 chromatic pmichaud?
18:40 pmichaud * Rakudo now passing 8436 spectests (+397 since last #ps)
18:40 pmichaud * Refactored handling of \x, \o, and \c escapes in PGE and Rakudo
18:40 pmichaud * Added more Unicode support to PGE and Rakudo
18:40 pmichaud * Started PGE and PCT refactors to support source line number annotations in generated bytecode
18:40 pmichaud * Added a 'find_caller_lex' opcode to allow finding lexicals in callers' scopes
18:40 pmichaud eor
18:41 chromatic Tene?
18:42 chromatic tewk?
18:42 chromatic Util?
18:43 Util Tuit deficit; litle progress.
18:43 Util New Rakudo bug under MinGW/Win32:  1**Inf should == 1, but instead is NaN. Writing ticket now.
18:43 Util EOR
18:43 chromatic Whiteknight?
18:43 Whiteknight away most of the week, no real progress
18:43 Whiteknight reviewed a few tickets/patches
18:43 Whiteknight EOR
18:43 chromatic Coke?
18:44 Coke - work on getting some things headerized, trying to understand headerizer to take advantage of the documentation fixups it provides.
18:44 Coke - work on getting some things headerized, trying to understand headerizer to take advantage of the documentation fixups it provides.
18:44 Coke - work on getting some things headerized, trying to understand headerizer to take advantage of the documentation fixups it provides.
18:44 Coke - ... so, partcl still stalled/dead/pining (unable to build dynops);
18:44 Coke - RT down to 378 tickets; not much movement this week.
18:44 Coke - Trac up to 258 tickets;
18:44 Coke - Lots of stuff in DEPRECATED.pod that's eligible for upcoming release...
18:44 Coke EOR, sorry for duplicate.
18:44 pmichaud q1q
18:45 chromatic Anyone else?
18:45 jonathan I have a report.
18:45 chromatic jonathan?
18:45 jonathan * Parrot
18:45 jonathan ** Fixed a segfault when you compiled through compreg code that had a :init as the target of a :outer
18:45 jonathan * Rakudo
18:45 jonathan ** Lexical subs and multi-subs are also working now - that took most of my Rakudo day last week
18:45 jonathan ** Got START blocks working
18:45 jonathan ** Converted Positional, Associative and Callable to parametric roles
18:45 jonathan ** returns and of supported for sub/method declarations and mostly enforced
18:45 jonathan ** Got a patch that does some of the work for typed arrays and hashes; has two failure modes which in turn fail quite a few spectests, hope to track those down and commit tonight
18:45 jonathan ** Hoping to have my current Hague Grant wrapped up soon, and apply for another one right after it's done.
18:45 jonathan * Other
18:45 jonathan ** Am preparing for talking lots at NPW and thinking about the hackathon following it - looking forward to it very much
18:45 jonathan .end
18:46 chromatic Anyone else?
18:47 chromatic Question time.  pmichaud, go ahead.
18:47 pmichaud This past week I did quite a bit of work on unicode stuff and dealing with ICU (more)
18:48 pmichaud In the Perl 6 spectest suite there is a significant (> 2k) batch of tests involving Unicode character properties
18:48 pmichaud These are things like  "L", "Lu", "M", "Z", "Arabic", etc.
18:48 pmichaud do we have an API design yet for how Parrot can make those properites available to programs?
18:49 allison pmichaud: not yet
18:50 pmichaud any guidelines about how to proceed?  Or should I just expect to not make progress on those tests for a while?
18:50 allison pdd28 is the broad strokes of guidelines
18:50 pmichaud i.e., are we likely to be looking at an opcode, a method on something, or ... ?
18:51 allison an opcode
18:51 pmichaud for the time being I can stick some methods on the CodeString PMC to do this... but that doesn't feel like the right place for it.
18:52 allison keeping in mind that an opcode would need to work for multiple character sets, not just unicode
18:52 Coke <shrug> if we don't have a plan, add them anywhere, but leave a note in DEPRECATED that it's not spec'd yet and therefore subject to change.
18:52 Coke then you can get work done.
18:52 pmichaud we could also generalize the is_cclass and find_cclass opcodes to understand unicode property names
18:52 chromatic What do you need to do with property names?
18:53 pmichaud mainly determine if a given codepoint has the given property
18:53 chromatic "In the current character set, does this character have an uppercase property?"
18:53 pmichaud yes, but it's more     "does this codepoint have the 'Lt' property?"
18:53 pmichaud where 'Lt'  might be any of the Unicode property names.
18:54 chromatic has_property xx, xx
18:54 chromatic ?
18:54 allison and if the character isn't unicode, then the answer is clearly "no"
18:54 pmichaud well, the ascii and iso-8859-1 codepoints map to unicode, but yes, other charsets could return "no"
18:55 Whiteknight other charsets may have different notions of "property" that we need to consider
18:55 allison this sounds like it's moving into a mailing list discussion
18:55 pmichaud note that we already have constants defined for the posix properties
18:55 pmichaud .CCLASS_UPPERCASE, .CCLASS_LOWERCASE, etc.
18:56 pmichaud I'm totally fine with sticking as a PMC method for the time being -- I just wanted to get a sense of how to proceed for now.
18:56 pmichaud It will be very easy for me to change to a different API later when one is developed.
18:57 pmichaud s/sticking/implementing/   # might be easier to understand what I wrote
18:58 allison the context switch from calling conventions to character sets is a bit too much at the moment, can we talk about it on the mailing list where I'll have time to look through the code and decide what makes the most sense?
18:58 Coke chromatic: when merging that back to trunk, watch out for changes to renamed files.
18:58 Coke ww.
18:59 chromatic Will do.
18:59 pmichaud Sure, I'll post a message to the mailing list.
18:59 chromatic Shall we review milestones now?  allison?
18:59 pmichaud It's not critical priority for Rakudo but it's important.
18:59 allison pmichaud: yes, will definitely look at it this week
18:59 allison chromatic: is that "now is your milestone going allison?"
18:59 allison s/now/how/
19:00 chromatic It's "I hate reviewing milestones, save me!"
19:00 allison ah, right, okay
19:00 allison we have 3 this month
19:00 allison one is landed
19:00 chromatic The comma splice I threw in for free.
19:00 allison pmichaud: how is pge ltm & protoregex coming?
19:01 pmichaud slowly.  I keep helping others with their issues.  :-|
19:01 pmichaud But the work has begun.  :-)
19:01 allison excellent
19:01 pmichaud afaik it's not blocking others so I'm not *too* worried about it.
19:01 pmichaud (and yes, it will not be ready for the April milestone.  Perhaps May for protoregexes.)
19:02 allison it's not "critical" for 1.1, do you want to move it to 1.2?
19:02 pmichaud my priority for this week is to get PCT tutorials ready for NPW and other events later in the year
19:02 pmichaud I'd even say move it to 1.3
19:02 allison ok, will do
19:02 allison my milestone for the month is a design review of pdd21-namespaces
19:03 pmichaud I have some comments on namespaces but haven't had a chance to write them up in reply to allison's message
19:03 allison I didn't get much feedback on the list, but I know from previous conversations with pmichaud that something needs to change, I just don't know what
19:04 pmichaud the main stumbling block I have now is that :method ends up placing the symbol in the namespace
19:04 allison pmichaud: even quick bullet points would be helpful, then I can look into the issues
19:04 pmichaud and we do have a need for :method :anon, but it's not the one that I put in my original ticket.
19:04 allison what's the ticket number on that?
19:05 pmichaud looking
19:05 allison uh... T #389?
19:05 pmichaud TT #389
19:05 pmichaud yes.
19:06 pmichaud fwiw, the behavior I describe in the ticket (with the exception of :anon flag) is already documented as such in pdd19
19:07 pmichaud anyway, I'll try to bullet these on-list today.
19:08 allison are there other relevant tickets, notes from other meetings?
19:08 pmichaud I think the hll namespace issues have been mostly worked out.
19:08 allison I seem to come away from each meeting where we talked about it convinced that we've solved it, but then come back and look at it again and it doesn't work.
19:09 pmichaud for that particular issue, we solved it in design but it hasn't made it to implementation yet.
19:09 pmichaud TT #8 may also be relevant to namespaces in general.
19:09 allison So, I'd like to sit down, solve it once and for all, and stop thinking about it. :)
19:09 pmichaud well, we've had several issues that float around namespaces but aren't necessarily "namespaces"
19:10 pmichaud the :method flag stuff was decided upon but not yet implemented
19:10 allison also true
19:10 allison that's specifically the one that seems to me to keep changing, but it could equally well be faulty memory :)
19:10 pmichaud the discussion of identifying classes by string, namespace, or key was discussed and (I think) resolved but I don't know that a definitive guide was written up for it
19:10 pmichaud I'm quite sure :method has been the same since OSCON 2008
19:10 pmichaud again, just not implemented.
19:11 pmichaud at PDS we also added the :ns_entry flag, which was previously known as the :namespace flag (and that was discussed in 2007).
19:12 pmichaud afaik  :ns_entry is implemented and working.
19:12 allison well, briefly write up what you remember as the solution
19:12 pmichaud can I just point to pdd19 and say "done" ?  ;-)
19:12 allison what I remember doesn't hang together as a coherent answer
19:13 allison I'll read through pdd19 while working on pdd21
19:13 pmichaud my issue in #389 wasn't that I think the design is wrong, it was that the implementation doesn't match the design
19:13 pmichaud (that was decided upon at OSCON and PDS, and documented shortly after PDS)
19:14 allison documented in pdd19, but not pdd21?
19:14 pmichaud I don't know that it impacts pdd21
19:14 pmichaud Let's do this...
19:14 pmichaud later today I will review pdd21 and note down all of the things I can think of that are confusion
19:14 pmichaud same for pdd15 (as noted in TT #8)
19:15 pmichaud I'll also double-check pdd19 and make sure that it matches what I remember (I've checked it before and it matches... but for completeness I'll review again)
19:15 pmichaud I'll summarize all of that into a bullet-like list to the mailing list, and if you have questions you can ask there.
19:16 allison also check for assumptions it doesn't make explicit
19:16 pmichaud okay, will do that also.
19:16 allison sounds lovely, thanks
19:16 pmichaud I'll also touch briefly on the question of relating namespaces to classes.
19:16 pmichaud (which I tend to think of as a separate issue from this one.)
19:16 pmichaud (but I think has also been largely resolved.)
19:17 allison okay, that's all the milestones for this month
19:18 cotto eternaleye had a good question
19:18 chromatic Anything else?
19:18 eternaleye Hi, I asked this question in #parrot, and cotto++ pointed me here: Are there any plans for an API to access the AST for HLL code from an embedding program? I could see it being immensely useful for, say, syntax hilighting. Especially the Declaration-Use Chain stuff the KDevelop guys are doing.
19:19 chromatic I'd like to see that working in Parrot.
19:19 particle- a yaml emitter/reader for PAST stalled
19:19 allison eternaleye: it's a good addition
19:20 pmichaud short term we could just attach the PAST as a property to the bytecode
19:21 pmichaud short answer is that an API hasn't been developed.  If you wanted to draft an API, we could see about implementing it.  :-)
19:21 eternaleye Okay, I'll see what I can think up
19:22 pmichaud we'll also know quite a bit when we have PCT generating bytecode annotations (which I expect to happen this week)
19:22 pmichaud some information could be stored as annotations.
19:23 allison pmichaud: this sounds to me more like a way to extract an AST, instead of doing a full compile down to bytecode.
19:23 allison (since he's talking about syntax highlighters)
19:23 eternaleye allison: Exactly
19:24 allison which should be mostly possible now with HLLCompiler
19:24 pmichaud oh!
19:24 moritz so the objective is just to make the --target=parse available with a nice API?
19:24 allison aye
19:24 pmichaud If you just want the AST, then use  'target'=>'past'  when compiling.
19:24 particle- again, see yaml emitter
19:24 pmichaud if it's from an embedding program, then having the AST directly is probably more useful than a yaml representation of it.
19:25 allison there just isn't any documentation lying around for how to do that (other than from the command-line)
19:25 pmichaud aha.
19:25 pmichaud we can fix that.
19:25 pmichaud but in general:
19:25 pmichaud $P0 = compreg 'Perl6'
19:25 pmichaud $P1 = $P0(source, 'target'=>'past')
19:25 pmichaud oops!
19:25 pmichaud $P1 = $P0.'compile'(source, 'target'=>'past')
19:25 pmichaud and $P1 is the ast.
19:27 eternaleye pmichaud: Yeah, but the "Working with PMCs" section of PDD10 is 'TBD', and PDD12 isn't even started.
19:27 pmichaud what is pdd12?
19:27 eternaleye I was thinking of something that could be walked from C or C++
19:28 eternaleye The one PDD10 mentions as superseding the embedding potion of itself
19:28 allison eternaleye: any Parrot structures can be walked from C
19:28 particle- you can walk it in C, just use the PMC VTABLE API
19:28 particle- this is better discussed in #parrot, though
19:28 pmichaud it sounds to me like you're asking for a C/C++ embedding API more than anything specific to HLL asts
19:29 pmichaud I suppose we could have C functions for accessing the ASTs.... but that doesn't seem likely.  Seems easier to just use the existing PMC interfaces.
19:29 eternaleye particle: Okay, I'll look into that. Is there a specific piece of documentation other than PDDs 11 and 17 for how to access the VTable API?
19:31 pmichaud time for me to pick up kids from school
19:32 pmichaud I will miss #parrotsketch next week -- traveling to NPW
19:32 particle- eternaleye: i want to point you to docs/pmc.pod, but it's pretty weak
19:32 eternaleye Thanks everyone!
19:36 chromatic Anything else, anyone?
19:38 Infinoid Thanks for all the parrot polishing, everyone!
19:38 particle- left #parrotsketch
19:38 chromatic Until next week then.
19:39 moritz caio
19:39 moritz erm
19:39 moritz ciao
19:39 moritz left #parrotsketch
19:40 chromatic left #parrotsketch
19:40 NotFound left #parrotsketch
19:40 fperrad left #parrotsketch
19:42 Util left #parrotsketch
19:51 Infinoid left #parrotsketch
19:55 jonathan left #parrotsketch
20:06 pmichaud left #parrotsketch
20:10 Coke left #parrotsketch
20:36 Tene joined #parrotsketch
22:03 Whiteknight joined #parrotsketch
22:08 rin1024_ joined #parrotsketch
22:38 rin1024_ joined #parrotsketch
23:10 Tene joined #parrotsketch

| Channels | #parrotsketch index | Today | | Search | Google Search | Plain-Text | summary