|
Vision for 2.0: Production Users | Priority for 1.5: Remove Deprecated Features | trac.parrot.org/parrot/wiki/Propos...chProtocol | Note: This channel is only for our Tuesday status meetings; you probably want #parrot instead. Set by moderator on 14 August 2009. |
|||
|
00:14
rdice joined
00:27
davidfetter joined
01:17
mikehh joined
02:05
japhb joined
03:54
mikehh_ joined
05:20
cotto joined
08:59
masak joined
11:47
Whiteknight joined
14:10
masak joined
|
|||
| japhb | Early report; probably back to not able to make meetings again: | 15:49 | |
| * Work Done: | |||
| + trac.parrot.org/parrot/wiki/ModuleEcosystem -- Comments welcome! | |||
| + Discussed with pmichaud feasibility of writing install tool in NQP (or subset of Perl 6 for now, converting to real NQP in a couple releases); he believes it is reasonable. | |||
| * Next Tasks: | |||
| + Probably nothing until September ($work deadlines) | |||
| + Then start on install tool | |||
| * Blocking On: | |||
| + $work deadlines | |||
| EOR | |||
|
16:00
davidfetter joined
|
|||
| Whiteknight | What I did: | 17:24 | |
| - Released 1.5.0 "TEH PARROTZ!" to much fanfare | |||
| - Lots of testing, emailing, badgering in preparation for the release | |||
| - Started a new branch to start making Contexts into a PMC type | |||
| - Started testing/benchmarking the new lazy PObj allocator, and trying to tune values to improve startup time | |||
| What I will do: | |||
| - Continue the Context PMC work | |||
| - IO stuff | |||
| - GC Work (tuning the lazy allocator, using/testing/benchmarking the fixed-size structure allocator) | |||
| What I am blocking on: | |||
| - Not enough time. | |||
|
17:32
smash joined
17:35
pmichaud joined
17:37
NotFound joined
|
|||
| cotto | # What I did: | 17:50 | |
| * got the profiling runcore working with as a pluggable runcore | |||
| - also made the runcore smarter about profiling instructions in inner runloops | |||
| - the pluggable part of the code is solid (thanks chromatic!) | |||
| - instruction-level profiling should be good | |||
| - the problem lies with turning Parrot's CPS into something Callgrind can use | |||
| - to this end, spent some time understanding continuations and CPS (am mostly there now) | |||
| - chromatic and I will be hashing this out (with a wiki page) this week | |||
| # What I hope to do and how many tuits I expect to have: | |||
| * figure out a nice way to stuff Parrot's CPS into a Callgrind file | |||
| * various other smaller improvements to profiling runcore | |||
| * tuit outlook is good | |||
| # What could block my progress: | |||
| * no external blockers | |||
| eor | 17:51 | ||
| pmichaud | What I did (since 2009-07-28): | 18:02 | |
| * Rakudo now builds from an installed Parrot | |||
| * Rakduo has a "make install" target (needs work, but it functions) | |||
| * Worked with Gerd++ on a Fedora 12 package for Rakudo | |||
| * Cleaned up some default parameter types in Rakudo | |||
| * Moved more things into the setting | |||
| * Updated the Rakudo ROADMAP | |||
| * Changed <...> and <<...>> to circumfix: instead of quote: | |||
| * Added #`[embedded comment] syntax | |||
| * Added some Whatever prefix: operators | |||
| * Filled out Rakudo release managers for 2009 | |||
| What I'm doing this week: | 18:03 | ||
| * Catching up from travel | |||
| What I'm blocking on: | |||
| * Too much travel | |||
| * Insufficient waking hours | |||
| EOR | |||
|
18:03
Util joined
18:04
chromatic joined
|
|||
| chromatic | Merged the runcore encapsulation patch to the branch. | 18:04 | |
| Some cleanup. | |||
| Working on an Integer optimization; a PMC with only one attribute is *a lot* faster when we don't allocate a new attribute struct for it. | |||
| Answered several questions here and there. | 18:08 | ||
| I will: continue working with cotto on the profiling core. We're close. | |||
|
18:13
allison joined
|
|||
| NotFound | What I did: | 18:13 | |
| * Finished the auto_attrs branch and merged it to trunk | |||
| * Tested a change in the way class_init PMC functions are handled, TT #918 | |||
| * Minor fixes | |||
| What I will do: | 18:14 | ||
| * Try to help with some of the active branches | |||
| What I'm blocking on: | |||
| * Too much heat ':) | |||
|
18:16
barney joined
|
|||
| l3t0 | What I did: leto.net/dukeleto.pl/2009/08/parrot...ivity.html | 18:16 | |
|
18:16
Coke joined
|
|||
| allison | - Fixed test failures on the pcc_arg_unify branch. Down to 308 failing tests in the 'corevm' target. Still can't build PGE, but the failure is now in a different part of PGE (later in the build). | 18:17 | |
| - Added a 'make corevm' target in trunk, allowing 'coretest' to run with out building PGE and PCT. | |||
| - Added the current Fedora spec files from Gerd Pecora. | |||
| - Working my way through the past 9 months of parrot-dev posts, down to 200. | |||
| EOR | |||
| Coke | Working on partcl, EOR. | 18:18 | |
| l3t0 | What I will do: hack on various TT's | 18:19 | |
| What I am blocking on: there does not seem to be any spec for sNaN, the signalling NaN, which is mentioned in PDD14 | 18:20 | ||
| Util | # Done: | 18:26 | |
| * Fixed the doc error that l3t0 mentioned in packfile.c. | |||
| # Plan for next week: | |||
| * Resolve discrepancies in PDD13 vs actual Packfile {.c,PMC} implementations. | |||
| * Write up Trac tickets for Packfile PMC's roundtrip failure and missing basic functionality. | |||
| # Blockers: | |||
| * None. | |||
| .end | |||
| mikehh | Testing and fixing failed tests | 18:31 | |
| cotto | Hello. | 18:32 | |
| NotFound | Hola. | ||
| Util | hi | ||
| l3t0 | 'ello | ||
| japhb | o/ | ||
| barney | hi | ||
| allison | hi | ||
| mikehh | greetings | ||
| Coke | ~~ | 18:33 | |
| allison | let's get started, any questions? | 18:34 | |
|
18:34
jonathan joined
|
|||
| NotFound | q1q | 18:35 | |
| allison | go ahead NotFound | ||
| NotFound | TT #918 needs a deprecation cycle? | ||
| allison looking | |||
| Coke | trac.parrot.org/parrot/ticket/918 | ||
| allison | If you eliminate the pass variable, it would need a deprecation cycle, but otherwise it isn't changing functionality, just reorganizing | 18:37 | |
| pass could probably be passed as an argument to the static function | |||
| NotFound | It doesn't eliminate it, is just no more in scope in the user supplied part. | 18:38 | |
|
18:38
jhorwitz joined
|
|||
| NotFound | That way has no advantage, we'll need the deprecation cycle to get rid of it. | 18:39 | |
| allison | NotFound: aye. The rule of thumb is "if users have to modify their code, it requires a deprecation cycle" | 18:40 | |
| l3t0 | where should tickets regarding mod_parrot go? it doesn't build with the newest parrot | ||
| allison | the advantage is, you could make the change now, and then eliminate the pass argument in a deprecation cycle | ||
| jhorwitz is actually here today, though very late | |||
| allison | (instead of waiting for the whole thing) | ||
| NotFound | allison: yes, but we can't be sure that no one isn't using any other symbol accidentally in scope. | 18:41 | |
| allison | NotFound: then a deprecation cycle it is | ||
| NotFound | allison: ok, EOQ | ||
| jonathan | q1q | 18:42 | |
| jhorwitz | l3t0: there is a list for that -- i will publish on smashing.org/mod_parrot in a bit | ||
| allison | jonathan: go ahead | ||
| jonathan | allison: I've got a couple of questions on the calling conventions changes that you're currently working on. | 18:43 | |
| allison | okay | ||
| jonathan | The backdrop to this is that I'm planning to work in the near future on re-designing and re-implementing Parrot's signature handling and signature binding. | ||
| So I'd like to get a little more idea on what I can expect from Parrot in a couple of cases. | |||
| allison | this may be a longer question, more suitable for #parrot, but let's give it a try | 18:44 | |
| jonathan | 1) Do you plan for Parrot to support a mechanism whereby a positional parameter can be marked as taking a named parameter too? That is, if a named one matches, it takes priority? | ||
| (this is 1 of 2 :-)) | |||
| Whiteknight | you mean :lookahead? | ||
| jonathan | Right, if that's what it shall be called. | ||
| And if that's what it does. :-) | |||
| allison | yes, that's patrick's suggestion, accepted | 18:45 | |
| jonathan | OK, and do you see this as landing shortly after the current refactors, or further into the future? | ||
| I'm willing to give tuits to making it happen if needed. | |||
| allison | jonathan: I'm not working on it at all, feel free | 18:46 | |
| jonathan | OK. | ||
| After you've landed the current branch? | |||
| Or is it appropriate to work on it in that branch? | |||
| Whiteknight | that's one of those things that I suspect will land quickly after the first round of refactors land | ||
| allison | (you could even add it now, since it's largely orthogonal to the refactors) | ||
| jonathan: I'd do it in a branch | |||
| jonathan | I'd rather work on the refactored code. | ||
| OK. | |||
| allison | jonathan: I'm not touching that part of the code at all | 18:47 | |
| jonathan | Oh, ouch. | ||
| What is changing? | |||
| allison | really, what this branch does is change the way arguments are passed around the system | ||
| jonathan | OK, it's not going to attack inter_call.c and the things that go on in there? | ||
| allison | instead of a handful of different argument passing strategies (varargs, pointer to op, fixed integer array, resizable integer array, etc) | 18:48 | |
| they're all passed as a call signature PMC | |||
| jonathan | OK | ||
| allison | (which is a bit like a Capture) | ||
| jonathan | Will there be a way to just get at that CallSignature PMC and process it? | ||
| allison | inter_call.c, etc are later refactors | 18:49 | |
| jonathan | That is, rather than specifying a bunch of .param's I could instead say "i can haz CallSignature?" and unpack it myself? | ||
| allison | jonathan: not at first, but we will add a :signature or something like that, which takes a whole call signature as a single parameter | ||
| jonathan | :signature feels misleading - I'd expect more like :capture | ||
| Whiteknight | .param sig :signature? | ||
| allison | :sig_object or whatever | 18:50 | |
| jonathan | But maybe that's my Perl 6 world view coming in too much. :-) | ||
| allison | .param pmc foo :signature | ||
| aye | |||
| jonathan: capture is Perl 6, not using it :) | |||
| jonathan | OK. And that'd essentially side-step the stuff in inter_call.c that binds parameters, and just give to me the the CallSignature that got constructed on the caller side? | ||
| allison | jonathan: oh, I'm already sidestepping the parameter binding stuff | 18:51 | |
| jonathan | OK. | ||
| allison | it's done via the call signature | ||
| but, yes, you'd just get the CallSignature, and could do whatever you like with it | |||
| jonathan | So basically after your refactor, it'll be easy for me to always rely - no matter wehther I'm handling an invocation from PIR or C or whatever - on having a CallSignature with the args in? | ||
| allison | essentially, the entire system is using PCC now | 18:52 | |
| yes | |||
| everything uses a call signature | |||
| jonathan | OK, that sounds good. | ||
| I suspect that I may well go down that road. | |||
| And last of all, do you have a rough idea of when the refactor will be mergable? | 18:53 | ||
| Are we looking at a week, two weeks, a month, two months...? | |||
| pmichaud | :signature sounds wrong | ||
| allison | The conversion is done, I'm in the long tail of fixing failing tests | ||
| pmichaud | a "signature" is something that attaches to the sub, not the arguments | ||
| allison | so, no time estimate | ||
| pmichaud | i.e., a sub has a signature that indicates what kinds of arguments it accepts | ||
| "call signature" might be more appropriate. or "arg signature" | 18:54 | ||
| jonathan | allison: OK. I'll keep watch of your commits to get an idea of how things are going. :-) | ||
| And if you want Rakudo testing against that branch, let me know. | |||
| EOQ - thanks. | |||
| (erm, *when* you want...) | |||
| allison | jonathan: will let you know when we get to that point | ||
| jonathan | allison: Oh, one more thing | 18:55 | |
| In the CallSignature, the invocant will be available just as the first positional, as today? | |||
| allison | pmichaud: the name is unspecified at the moment | ||
| jonathan: yes, with the signature string "Pi" (marked as invocant) | |||
| so a method call that returns a single integer is "Pi->I" | 18:56 | ||
| jonathan | OK, but if I have a Sub PMC in $P0, and it was marked as :method when declared, I can call it as both inv.$P0(a, b, c) and $P0(inv, a, b, c) ? | ||
| allison | no | 18:57 | |
| TimToady | bad, bad | ||
| jonathan | Rakudo relies *very* heavily on being able to do that. | ||
| allison | that's not guaranteed to work now | ||
| that's your syntax parsing, not Parrot | |||
| jonathan | Hmm? | ||
| I don't follow. | |||
| TimToady | it's fundamental to p6 dispatch mechanisms | ||
| allison | yes, but p6 dispatch is built on top of Parrot | 18:58 | |
| TimToady | not if it behaves like that | ||
| jonathan | To put it another way, if you break the ability to do that, it will require a deprecation cycle, because it will cause Rakudo to need to re-write code. You can't just break that. | ||
| TimToady | or did you mean the other 'built on'? :) | ||
| jonathan | I suspect Rakudo is also not the only compiler relying on this ability. | 18:59 | |
| allison | that really has nothing to do with the call signature, that's a question of whether the method is stored in the namespace | ||
| and patrick keeps insisting methods shouldn't be stored in the namespace | |||
| pmichaud | note that "namespace" isn't involved in jonathan's question | ||
| allison | so, I'm assuming that you're not using that mis-feature | ||
| pmichaud | note that "namespace" isn't involved in jonathan's question | ||
| jonathan | allison: No. | 19:00 | |
| pmichaud | jonathan's question is completely independent of namespaces | ||
| allison | okay, stop, we're far exceeding the scope of parrotsketch | ||
| jonathan | allison: Imagine that I have some $P0 which is a Parrot Sub. Right now, we can invoke it as $P0(a, b, c) and if it was declared as :method then self becomes a. | ||
| allison | obviously I don't understand what it is you're relying on | ||
| pmichaud | (also, the "patrick keeps insisting part" is actually "how allison originally said it should work" :-) | ||
| allison | but, let's carry this to #parrot | ||
| jonathan | OK, sure, there's evidently a bunch more detail to work out here than I'd hoped. | 19:01 | |
| allison | yes, we will provide a way to support whatever features p6 needs | ||
| but, parrot dispatch *is not* p6 dispatch, and won't necessarily work like p6 dispatch | |||
| jonathan | allison: Yes, but this isn't really about dispatch. But anyway, we continue in #parrot. | 19:02 | |
| allison | ok, any other questions | ||
| Whiteknight | why do bad things happen to good people? | ||
| :) | |||
| l3t0 | signalling NAN? | 19:03 | |
| allison | l3t0: the question from your report? | 19:04 | |
| l3t0 | allison: PDD14 mentions a signalling NAN. There is a bitflag associated to it, and then no other code/spec anywhere describing how it should work | 19:05 | |
| allison | l3t0: it's a new idea | 19:06 | |
| feel free to propose how you think it should work to the list | |||
| l3t0 | how would people want it to work? There is a TT about cleaning up PDD14, which is why I am asking | ||
| allison: sounds good | |||
| Coke | q1q | 19:07 | |
| mikehh | a signalling NaN is to generate an execption | 19:08 | |
| allison | okay, Coke, go ahead | 19:09 | |
| Coke | regarding tcl - there's a lot of segfaults when running 'make spectest', especially with an optimized parrot. I would appreciate more eyes tracking those down. | 19:10 | |
| They seem to change if I run with or without --optimize. | |||
| (but mostly with) | |||
| chromatic | Sounds like STRING NULLness again. | 19:11 | |
| Coke | also, rt.perl.org/rt3/Public/Bug/Display.html?id=57088 is a long standing bug that's now affecting more and more of the code. | ||
| Any help on those parrot issues will make my life easier. Danke. | 19:12 | ||
| eoq. | |||
| allison | Coke: I can't promise to work on 57088 before the pcc refactor is done, but it is related, and could be a fix soon after | 19:13 | |
| Coke: the test case in that ticket should be added as a TODO test (or maybe skip) | |||
| Coke | yes. an excellent task for a cage cleaner; I didn't because it's really 2 files. | 19:14 | |
| allison | agreed (on cage cleaner) | 19:15 | |
| we do have some tests now that dump out a temporary .pir or .pbc file before running a test | |||
| chromatic | make testr | 19:17 | |
| l3t0 | i recently added a function to Parrot::Test called pbc_postprocess_output_like, which aids in testing PBC-related things | ||
| allison | any more questions? | 19:21 | |
| quick roadmap review of 1.5 (only 3 items) trac.parrot.org/parrot/report/14 | |||
| packfile pmcs? hit or miss for 1.5? | 19:22 | ||
| reschedule to when? | |||
| Util | miss | ||
| 1.6 | |||
| allison | great | 19:24 | |
| pir profiling tools? hit or miss for 1.5? | |||
| (I know great progress has been made) | |||
| chromatic | Miss; 1.6 for sure. | ||
| allison | same for pluggable runloops? | ||
| chromatic | Yes, they're tied together like two things tied together. | 19:25 | |
| Tene ties chromatic to chromatic. | |||
| chromatic | I can defeat you with mitosis. | ||
| allison | okay, I'll update those roadmap items | 19:26 | |
| any other questions, comments? | |||
| chromatic | What are the 1.6 priorities? | 19:27 | |
| What should we focus on this week? | |||
| Whiteknight | we have a lot of branches and stuff to merge in now | ||
| we might want to focus on raw stability this week | |||
| l3t0 | "raw stabiliy" = write more tests? | 19:28 | |
| chromatic | Our PMCs are severely undertested. | ||
| Whiteknight | that's a good point. Testing? | ||
| allison | we could say the focus is "merge branches" | ||
| japhb | Vision for 2.0: Production Users | Priority for 1.6: Merge Branches | Priority for this week: merge ready branches, get stable again | trac.parrot.org/parrot/wiki/Propos...chProtocol | Note: This channel is only for our Tuesday status meetings; you probably want #parrot instead. | 19:30 | |
| moderator | Vision for 2.0: Production Users | Priority for 1.6: Merge Branches | Priority for this week: merge ready branches, get stable again | trac.parrot.org/parrot/wiki/Propos...chProtocol | Note: This channel is only for our Tuesday status meetings; you probably want #parrot instead. | 19:30 | |
| allison | testing is always good | 19:30 | |
| Util | Reminder: coverage scan at tapir2.ro.vutbr.cz/cover/cover-results/ can help find large holes in testing. | 19:31 | |
| japhb | Test coverage as week 2 (next week) priority? | ||
| mikehh | test cover gives 68.1 on i386 and 64.6 on amd64 | 19:32 | |
| % that is on Ubuntu 9.04 in each case | 19:33 | ||
| allison | I've updated the roadmap tickets | 19:34 | |
| thanks everybody, tty next week! | |||
|
19:35
Util left
19:36
Coke left
19:37
pmichaud left
19:48
smash left
20:38
davidfetter joined
21:36
Whiteknight joined
22:17
jonathan left
22:58
japhb joined
|
|||