|
Vision for 2.0: Production Users | Priority for 1.6: Merge Branches | Priority for this week: Fix partcl segfaults & PANICs, increase test coverage on Namespace and Array PMCs, prune a struct | 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 18 September 2009. |
|||
|
00:02
Whiteknight joined
05:52
kurahaupo joined
07:14
cotto_w0rk joined
11:34
Whiteknight joined
14:18
Util joined
15:58
NotFound joined
16:52
fperrad joined
17:03
smash joined
17:10
darbelo joined
|
|||
| cotto_work | # What I did: | 17:17 | |
| * profiled pprof2cg (tuit were short this week) | |||
| # What I hope to do and how many tuits I expect to have: | |||
| * same as last week, hopefully with more tuits | |||
| # What could block my progress: | |||
| * rl | |||
| .eor | |||
| fperrad | # What I did last weeks : | 17:24 | |
| * Lua : rewrite my Test Suite in pure Lua | |||
| as an independent project, see testmore.luaforge.net/ | |||
| (include a Lua port of Test::More) | |||
| * load_language : converts WMLScript, Markdown & Lua | |||
| # What I must to do | |||
| * prepare a talk about Parrot for act.osdc.fr/osdc2009fr/ | |||
| .eor | |||
| darbelo | #did: | 17:39 | |
| * Removed PIC. | |||
| * Moved the JIT call frame builder into it's own file. | |||
| * Gave the frame builder it's own configure probe. | |||
| * Obliterated the rest of the JIT. | |||
| * Removed the JIT-dependent exec core. | |||
| #will try to: | |||
| * Go back to the strstart removing. | |||
| * More pmc_freeze.c cleanups | |||
| #Might block on: | |||
| * Tuit shortage. | |||
| .eor | |||
| NotFound | What I did: | 17:43 | |
| * Applied some patches. | |||
| * Miscellaneous fixes. | |||
| * Diagnosed problem in MySql module. | |||
| What I will do: | |||
| * Fix problems that intereferes with MySql module, improve it. | |||
| Q2Q | |||
| .eor | |||
| mikehh | What I did in the last week: | 17:50 | |
| * building and full testing parrot on amd64 and i386 | |||
| * fixing codetest/manifest_tests failures | |||
| * testing language builds on latest parrot, mainly rakudo and partcl | |||
| * worked on make cover - added more coverage and | |||
| * got cover-clean to remove all files generated by make cover | |||
| * except cover_db directory which is removed by make realclean | |||
| What I intend to do next week: | |||
| * continue testing | |||
| * get fulltest to run all tests | |||
| .eor | |||
| dukelet0 | 'ello | 17:59 | |
| What I did: | 18:02 | ||
| * Working on blog post about the Parrot Shell | |||
| * Benchmarking Euler problems on Parrot across released version | |||
| * Working on the Blizkost test suite | |||
| * Applying patches | |||
| Plan: | |||
| * More of the same | |||
| Blocking on: | |||
| * Too damn nice outside in PDX. | |||
| .eor | |||
| s/version/versions/ | |||
|
18:05
darbelo left
18:09
darbelo joined
18:20
chromatic joined
|
|||
| chromatic | I worked on optimizations and bug fixes. | 18:21 | |
| I helped remove the JIT. | |||
| This coming week, I hope to remove more deprecated features and work on other optimizations. | |||
| I also hope to document some of the slang primitives to help us figure out Lorito primitives. | 18:22 | ||
|
18:25
allison joined
|
|||
| Util | # Done | 18:27 | |
| * TT#994 - Set up local git-svn clone for auto-prop experiment; experiment still in progress. | |||
| * TT#389 - Poked at pbc.c, trying to keep subs with :method out of the namespace. It poked back, hard. Traced to namespace.pmc add_to_class(). | |||
| * Attended Atlanta LinuxFest. 500+ attendees. | |||
| = Python had a *booth*, with full-color banner, staff answering questions, code and websites being demoed... | |||
| @ Grrrr. Atlanta.pm would have staffed a Perl booth, if we had only known. | |||
| = OTOH, a Webhosting booth gave away copies of 2009-09 LinuxProMagazine (issue 106), containing the "Birdsong" Parrot article. (Can't find it online, though) | |||
| # Plan for next week: | |||
| * Make SVN properties do-the-right-thing for `git-svn` users (TT#994). Should finish in the week, either in success or failure. | |||
| * Brain-dump last weeks research into TT#389. Continue poking; medium chance of success. | |||
| # Blockers: | |||
| * None; more tuits available this week. | |||
| .end | |||
| mikehh | I make it time | 18:30 | |
| chromatic | Hello. | ||
| darbelo | Hola. | ||
| mikehh | Hi there | ||
| chromatic | Let's review last week's goals. | ||
| How did we do removing the old JIT? | |||
| mikehh | most of it gone | 18:31 | |
| fperrad | hello | ||
| cotto_work | hio | ||
| NotFound | hola | ||
| darbelo | The part that still there is the onw we want to keep. | ||
| I'd call it 'succesful' | 18:32 | ||
| chromatic | How much refactoring is left of what remains? | ||
| mikehh | me too | ||
| Util | hi | 18:33 | |
| chromatic | How about improving the test coverage of Exception? | ||
|
18:35
kj joined
|
|||
| mikehh | make cover reports 85.9% on exception.c | 18:35 | |
| NotFound | I've done a bit just a few moments ago | ||
|
18:36
allison joined
|
|||
| mikehh | 95.4% on exceptionhandler.c | 18:36 | |
| chromatic | Can you make a list of what we need to get to 100% on the wiki? | 18:37 | |
| mikehh | I'll give it a go | ||
| chromatic | How about MultiSub? Did anyone work on that? | 18:38 | |
|
18:38
jrtayloriv joined
|
|||
| Util | multisub.{c,pmc} had no change in coverage numbers from r40951 to r41406. | 18:39 | |
| chromatic | Let's keep it on the list for next week then. | 18:40 | |
| How did we do on branch merges? | |||
| mikehh | good | ||
| cotto_work | thanks to bacek and his git-svn magic | ||
| mikehh | especially kill branches | ||
| darbelo | gc-refactor merged, kill_pic branched and merged, kill_jit branched_and merged | ||
| NotFound | kill++ | ||
| darbelo | all dead now. | 18:41 | |
| chromatic | Do we have upcoming branches to merge? | ||
| jrtayloriv | (sorry I'm late -- howdy) | ||
| allison | (looks like my connection dropped off before my report made it into the channel, can fill in later) | 18:42 | |
| darbelo | no branch other than pcc has commits in the last month. Merges look unlikely. | 18:43 | |
| chromatic | Anything else to review from last week, tech-wise? | ||
| Util | RT#53302 says that the `nsentry` branch might be removed after a `diff` of it is added to TT#389. | 18:44 | |
| cotto_work | q1q | ||
| chromatic | Okay. | ||
| NotFound | q2q | ||
| chromatic | Let's put MultiSub on the testing queue for this week. | 18:45 | |
| Let's review milestones. Can someone who's not at a conference go through this list? trac.parrot.org/parrot/report/14 | |||
| I have done a bit of work on pruning C data structures; will mail the list later. | |||
| allison_ | is vtable swap going to be worked on this month? | 18:46 | |
| i.e. should we reschedule or drop the task? | 18:47 | ||
| (it may end up being irrelevant, if lorito goes as planned) | |||
| chromatic | It's become less of a priority, thanks to other changes. | 18:48 | |
| allison_ | bump after 2.0? or drop from roadmap tasks? | 18:49 | |
| chromatic | Let's defer it until 2.1. | ||
| allison_ | 2.2 it is | ||
| mikehh | TT #566, #567, #568 are all hll_interop stuff (pmichaud) | ||
| NotFound | Looks like almost no one knows what needs to be done. | ||
| dukelet0 looks at milestones | |||
| allison_ | actually, 2.6, since we haven't broken out the post-2.0 milestones yet | 18:50 | |
| dukelet0 | i will add enough docs to the parrot_debugger to close before 1.7 | ||
| allison_ | the hll_interop task needs a revisit | ||
| as in "what's been done, what needs to be done, what's blocking?" | 18:51 | ||
| Util | TT#600 (bytecode testing framework) needs more detail before I would tackle it. | ||
| allison_ | Util: would you feel comfortable putting together a first draft of what you think might need to be done, so the group can expand/discuss? | ||
| Util | Doh! | ||
| mikehh | the testr option compiles to bytecode and then tests it | 18:52 | |
| allison_ | The basic task is just "make it possible to test a bytecode file" | ||
| Util | I will make a first draft. | ||
| allison_ | Util: thanks! | 18:53 | |
| Util | ...if you tell me what you are testing for - loadability? canonical structure? | ||
| mikehh | rakudo also compiles to .pbc as well | ||
| allison_ | Util: more general than that | ||
| Util | OK | ||
| allison_ | Util: we should be able to run any test we currently run in PIR from a bytecode file instead | ||
| (that's the only way to be sure the bytecode is working) | 18:54 | ||
| Util | Aha! got it! | ||
| NotFound | We are not. The problem of not storing the encoding of constant strings is still unresolved. | 18:55 | |
| allison_ | on seed libraries, how's the Aviary, Plumage stuff coming? | ||
| should we reschedule/rename this task to fit that work? | |||
| fperrad | TT #1052 is needed | ||
| allison_ | fperrad: for the testing task? | 18:56 | |
| darbelo | japhb was working on bootstraping some aviary stuff. | ||
|
18:57
pmichaud joined
|
|||
| fperrad | allison_, yes, TT #1052 is : Add --target=pbc to HLLCompiler | 18:58 | |
| mikehh | assigned to pmichaud | ||
| allison_ | fperrad: aye, took a look, it's not an absolute requirement for bytecode testing (since it could always be done in a separate step), but nice to have | 18:59 | |
| NotFound | allison_: Can we host some modules at svn.parrot.org ? We were talking yesterday about MySql module leaving hist nest i examples. | ||
| pmichaud | right, I can't imagine that TT #1052 would be a requirement | ||
| clearly we can produce .pbc without having --target=pbc | 19:00 | ||
| allison_ | NotFound: we could... though it might be better to follow the approach we've taken with languages | ||
| fperrad | sorry, I think as HLL implementor | ||
| allison_ | NotFound: where each group of modules keeps it's own repository | 19:01 | |
| NotFound: (in the source control tool of their choice) | |||
| NotFound | allison_: When/if it gets mature enough and more people work on it, sure. | ||
| allison_ | NotFound: we can create another svn repo easily enough on svn.parrot.org. Will it be used by enough modules to be worth it? | 19:03 | |
| (input from others on channel?) | |||
| NotFound | allison_: main points are: be easy for me to work on it, and have a url that plumage can use. | 19:04 | |
|
19:04
Coke joined
|
|||
| Coke goes whoops. | 19:04 | ||
| pmichaud | I would just do modules in github, sourceforge, etc. | ||
| allison_ | NotFound: plumage can use any URL, it's a distributed module index | ||
| dukelet0 | github++ | ||
| pmichaud | pick the one you're most productive with | ||
| NotFound | Being easy for me excludes git. | 19:05 | |
| darbelo | NotFound: google code has svn and is pretty easy to set up. | ||
| pmichaud | yes, googlecode is also good. that's what partcl is using | ||
| and pynie | |||
| NotFound | Ok, I'll give it a try. | ||
| allison_ | questions, NotFound you had 2 queued, was that one? | 19:06 | |
| NotFound | allison_: TT #1057, subsystem prefix for list.c functions. | ||
| allison_ looking | 19:07 | ||
| NotFound | Also MySql related, BTW | ||
| chromatic | I prefer Parrot_list as a prefix; it's only one character longer and it's much clearer. | 19:08 | |
| allison_ | NotFound: lists aren't a specific enough subsystem | ||
| chromatic | ... but I'm not sure we *need* those functions in general. | ||
| allison_ | so, Parrot_pmc | ||
| NotFound | The api page says 2 or 3 letters | 19:09 | |
| chromatic: they are used. | |||
| allison_ | (or, more accurately, lists aren't a subsystem) | ||
| chromatic | I know we use them now, but I think they're only used in a few places and largely vestigial. | 19:10 | |
| NotFound | allison_: Parrot_pmc_list_... ? | ||
| allison_ | NotFound: that would work, or Parrot_pmc_array | ||
| NotFound | chromatic: maybe, but I need to rename it, is blocking MySql work. | ||
| allison_ | NotFound: go ahead, it falls under the general deprecation item | 19:11 | |
| darbelo | Rename them now and open ticket for their obliteration? | ||
| mikehh | kill++ | 19:12 | |
| allison_ | darbelo: yes, or at least a ticket to check and see if they can die | ||
| pmichaud | if rakudo uses them (unlikely), I'm okay with them renaming. | 19:13 | |
| NotFound | I think is only use by the Array pmc and imcc | ||
| allison_ | NotFound: there's a good chance they should be refactored into Array's code, then | 19:14 | |
| mikehh | BTW Coke++ for closing RT tickets and getting others to | ||
| allison_ | NotFound: for now, rename, enter a ticket to explore what to do next | 19:15 | |
| pmichaud | Yes, Coke++ | ||
| NotFound | Ok | ||
| pmichaud | +1 | ||
| NotFound | Next question: the exception thrown by the exit opcode is resumable? | ||
| Tene | NotFound: anything thrown by throw_from_op is resumable, but throw_from_c or whatever isn't. | 19:16 | |
| so, probably yes | |||
| NotFound | Actually is, but I doubt any code that uses it expects to be resumed. | ||
| Coke | I can see wanting an on-exit handler. | ||
| (which might be a non-sequitor.) | |||
| Tene | Coke: that would invoke some other code, but wouldn't resume. | ||
| NotFound | The real question is: can we get rid of the continuation created in it? | 19:17 | |
| Tene | NotFound: why? | ||
| allison_ | NotFound: the spec lists it as "handleable", but doesn't mark "resumable" | ||
| NotFound | Tene: to avoid debugging strange failures caused by a resume. | ||
| pmichaud | (on-exit handler) In general, we want to have an "on-exit" possibility for all subs, not just main | ||
| dukelet0 | pmichaud: like "after" in Moose ? | 19:18 | |
| pmichaud | dukelet0: perhaps. In Perl 6 it's "leave" | ||
| Tene | NotFound: If someone is trying to resume an exit exception, I don't see any reason to disallow it. It's just an exception like any other. | ||
| pmichaud | dukelet0: I think that "after" in Moose is more of a wrapper than an on-exit handler | ||
| NotFound | Tene: if we allow it to be resumed, every time you use exit you must add code to handle the possible resume. | 19:20 | |
| pmichaud | NotFound: that's not much different than any other "throw" situation. | ||
| NotFound | pmichaud: then kill the opcode and use throw | 19:21 | |
| Tene | Do we also need to always check that a sub that we're invoking still exists, just because there's the possibility that someone has deleted it? | ||
| pmichaud | ....deleted it? | 19:22 | |
| how does one "delete" a referenced sub? | |||
| Tene | I'm pretty sure that I remember doing that... remove it from the namespace. | ||
| pmichaud | if anything has a pointer to the sub, it should still exist. | ||
| allison_ | NotFound: are you asking whether we should add functionality to exit? or remove existing functionality? | 19:23 | |
| dukelet0 | pmichaud: namespace elements can be deleted | ||
| pmichaud | that would include any contexts, outer lexical references, etc. | ||
| Tene | It was just an example of doing something stupid an dbroken. | ||
| pmichaud | dukelet0: deleting a namespace element doesn't delete the sub. | ||
| at least, it shouldn't delete the sub | |||
| NotFound | allison_: I see it at removing existing unfunctionality. | ||
| s/at/as | |||
| dukelet0 | pmichaud: we should have a test for that | ||
| Tene | and resuming an exit exception would fall into that category. | ||
| pmichaud: there are plenty of places in PCT and rakudo where functions are fetched from namespaces. That's all I was thinking of. | 19:24 | ||
| NotFound | Tene: no, faliling to find a sunb throws an exception, resuming an exit can give a segmentation fault. | ||
| pmichaud | assuming that an exit exception has a resume entry (a Continuation), that continuation would reference the sub, and the sub would therefor be marked as live and not be gc'ed | ||
| Tene | Please ignore my chosen example. It wasn't a good idea. :) | ||
| pmichaud | i.e., the Sub PMC would exist simply because there's a Continuation/Exception that continues to reference it | 19:25 | |
| NotFound | Is valid code to have an exit at the end of a bytecode segment, and in fact we have examples and tests like that. | ||
| pmichaud | but going a bit further (more) | 19:26 | |
| it wouldn't bother me if "exit" throws an unresumable exception. If someone needs a resumable exception, we have "throw" for that. | |||
| NotFound | pmichaud: that's my point, if for some you want a resumable exit you can throw an exit exception | 19:27 | |
| But the current, and what most people will expect for the exit opcode, is to not needing to care for resume. | |||
| pmichaud | but that's true for many 'throw' usages as well | 19:28 | |
| i.e., many people assume a thrown exception won't resume. | |||
| (not a counter-argument, just pointing out that throw and exit aren't any different in this respect) | |||
| allison_ | I'm okay with non-resumable exit | 19:29 | |
| I'm about to have to leave for lunch | |||
| pmichaud | otoh, it seems to me that exit could use the same logic as throw | ||
| cotto_work | allison_, could you look over GitObjections on the wiki in the near future and make sure all your objections are present? | 19:30 | |
| NotFound | pmichaud: Given that few languages have resumable exceptions, yes, most people don't expect. But that's only a documentation and examples problem. | ||
| Tene | pmichaud: it currently does | ||
| allison_ | did cotto have a question before we go? | ||
| cotto_work | that was it | ||
| allison_ | cotto: yes, I'll look over it | ||
| pmichaud | Tene: then why is there an issue with exit and not with throw? | ||
| cotto_work | thank | ||
| eoq | |||
| s/k/ks/ | 19:31 | ||
| NotFound | It currently does, the point is to change the current behaviour and docuemnt it. | ||
| allison_ | pmichaud: I mainly see it as a question of "why have exit if it does the same thing as throw?" | ||
| but, I don't have a strong opinion here | |||
| pmichaud | allison_: that's reasonable to me also | ||
| allison_ | NotFound: it would be subject to a deprecation cycle | ||
| pmichaud | what are we changing about the current behavior, then, if it's already the same as throw? | ||
| NotFound | The point of using exit is shortness. The need to be ready for resume is against that. | ||
| pmichaud | you're trying to make it *not* the same as throw? what's the purpose of that? | 19:32 | |
| allison_ | so, you can deprecate it and see if anyone complains between now and then | ||
| Tene | NotFound: remove lines 890,893,894 from src/ops/core.ops | ||
| allison_ | have to run, thanks everybody! | ||
| Coke | allison_: ~~ | ||
| Tene | pmichaud: his point is that 'exit' has different expectations from 'throw', and that resuming from an exception thrown by 'exit' is unlikely to be correct in any situation. | 19:33 | |
| I don't know how much I agree with it. | |||
| NotFound | Tene: and hard to debug if it happens. | ||
| Tene | NotFound: identical debugging situation to any other resumed exception. | ||
| as well, IMO, if you're resuming from an exit exception, you had better know what you're doing. There are well-documented ways to prevent your handler from catching exit exceptions. | 19:34 | ||
| I don't see how 'exit' is a special case here. | 19:35 | ||
| pmichaud | I have to go as well. It feels odd to treat 'exit' as a special case, although I see the point. | ||
| Tene | IMO, it's the same as 'print' vs 'say' | ||
| pmichaud | bbl | ||
| NotFound | Tene: Is a different opcode, that's spĆØcial enough for me. | ||
| Coke | btw, there is a ticket somewhere where allison has proposed removing say. =-) | 19:36 | |
| Tene | 'say' used to be a different opcode, iirc. | ||
| Coke | say used to be PIR magic. then it was an opcode. | ||
| (and before that, it was just print, no newlines) | |||
| Tene | and before that, you didn't even have 'print', you just had to call a method on STDOUT? | 19:37 | |
| ;) | |||
| japhb appears for long enough to say: | |||
| Don't kill say. | |||
| My life as a PIR debugger would just be more painful with only print. | |||
| Coke | (oh, I'm not planning on it.) | ||
| Tene | There are quite a few opcodes that could be replaced by method calls, iirc. | ||
| japhb | Two lines of code every time I wanted to print the value of a register. | ||
| Tene | NotFound: It looks like allison has OK'd it, as long as it goes through a deprecation cycle, and nobody else will complain too loudly if you want to do it. | 19:39 | |
| NotFound | But you are complaining ;) | ||
| Tene | NotFound: Please make a ticket and attach the patch I proposed, and list the date after which it can be applied. | ||
| NotFound | Tene: ok | ||
| Tene | and list it in the deprecated whatever place. | ||
| NotFound | EOQ | ||
| mikehh | anyone got anything else to say or is that a wrap-up | 19:41 | |
| Tene | Sounds like we're done. | ||
| dukelet0 | The dishes are done, man. | 19:43 | |
|
19:44
Util left
19:45
darbelo left
19:46
NotFound left,
fperrad left
20:04
chromatic joined
20:11
chromatic left
20:45
jrtayloriv left
20:49
cotto_work joined
22:09
allison_ joined
|
|||
| allison_ | Pasting report dropped by poor network access earlier: | 22:09 | |
| - Gave a talk at the JVM Languages Summit. | |||
| - Tested Parrot on Mac OS 10.6, filed some tickets (warnings and possible future development). | |||
| - Ran some simple benchmarks on the pcc branch, show the speed is about equal to current trunk. | |||
| - Talked with chromatic about project roles and responsibilities, a "Dev Coach" role. | |||