Perl 6 - the future is here, just unevenly distributed

IRC log for #parrotsketch, 2010-06-22

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

All times shown according to UTC.

Time Nick Message
05:22 contingencyplan joined #parrotsketch
05:32 contingencyplan joined #parrotsketch
06:02 contingencyplan joined #parrotsketch
10:36 contingencyplan joined #parrotsketch
12:59 wdg_user_341 joined #parrotsketch
13:00 kid51 * What I Did:
13:00 kid51 -- usual small code/test fixes
13:01 kid51 -- participated in Lorito discussion at YAPC yesterday
13:01 kid51 -- oddly enough, word "Lorito" only mentioned once during the meeting
13:01 kid51 -- summary of points put on whiteboard is here:  http://thenceforward.net/pa​rrot/yapc_bof_20100621.txt
13:01 kid51 * Will Do:
13:02 kid51 -- More work on cfunctiondocs branch.
13:02 kid51 EOR
13:14 bluescreen joined #parrotsketch
13:16 spinclad joined #parrotsketch
13:20 bluescreen joined #parrotsketch
15:37 tcurtis joined #parrotsketch
15:51 NotFound joined #parrotsketch
16:02 cotto_work joined #parrotsketch
16:08 kid51 joined #parrotsketch
16:20 bubaflub joined #parrotsketch
17:18 NotFound What I did:
17:18 NotFound -parrot
17:18 NotFound * Added set_integer_native and push_integer vtables to ByteBuffer
17:18 NotFound * Fixed NCI bug with null STRING
17:18 NotFound * Changed PMCs isa_hash initialization to shorten generated code
17:18 NotFound and simplify usages.
17:18 NotFound * Added URI/Escape to runtime library.
17:18 NotFound * Some cage cleaning in PMCs
17:18 NotFound * Added a lot of PMC tests.
17:18 NotFound -winxed
17:18 NotFound * Fixed NCI sigantures in example Mysql
17:18 NotFound * Allow multiple declarations in const statement.
17:18 NotFound * Experimental tailcall optimization.
17:18 NotFound * Update example pirado to PBC changes and fix sub problems, bacek++
17:18 NotFound * Minor fixes and refactors.
17:19 NotFound What I will do:
17:19 NotFound No plan.
17:34 eternaleye joined #parrotsketch
17:55 eternaleye joined #parrotsketch
18:01 whiteknight joined #parrotsketch
18:15 eternaleye joined #parrotsketch
18:24 Coke partcl-nqp
18:24 Coke - F2F hacking session with mdiep, who committed code!
18:24 Coke (though I didn't =-)
18:24 Coke parrot
18:24 Coke - work on html_cleanup branch; goal is to greatly improve technical
18:24 Coke aspects of generating docs.parrot.org; list of current gen'd docs
18:24 Coke is now docs/index/*json; tools/docs/make_html_docs.pl parses this
18:24 Coke and does everything but... actually generate HTML
18:24 Coke - yapc
18:24 Coke attend bofs & talks.
18:24 Coke EOR
18:56 whiteknight WHAT I DID:
18:56 whiteknight * (PLA) Improved BLAS bindings
18:56 whiteknight * (PLA) Added elementary row operations and gauss-jordan example. Looked into next steps (LAPACK bindings?)
18:56 whiteknight * (PLA) Adding functionality and tests. Create a new branch to track Parrot HEAD more or less ("official" work still targets previous stable release)
18:56 whiteknight * (Parrot) merged ns_func_cleanup branch. Created patches for Rakudo and Partcl
18:56 whiteknight * (Plumage) Got commit bit from japhb++. Looking into some of the build failures
18:56 whiteknight * (Parrot) Following along with our intrepid GSoC students, answering questions on IRC.
18:56 whiteknight * (Other) Following along with some other projects, especially Rakudo and PIRATE
18:56 whiteknight WHAT I WILL DO:
18:56 whiteknight * (PLA) Need to expand some BLAS-related functionality to all Matrix types
18:56 whiteknight * (PLA) Want to put together some usage examples, especially with Winxed and Rakudo
18:56 whiteknight * (Plumage) Hope to either fix, or help fix, Plumage and get it running again against current Parrot
18:56 whiteknight * (Parrot) A handful of small cleanup tasks I want to look into, some optimizations I want to explore
18:56 whiteknight WHAT I AM BLOCKING ON:
18:56 whiteknight * Time
19:21 ash_ joined #parrotsketch
19:23 eternaleye joined #parrotsketch
19:29 allison joined #parrotsketch
19:41 cotto_work #did:
19:41 cotto_work - met with khairul to discuss his gsoc project, things look good on his end
19:41 cotto_work - there's some overlap with ongoing work in dynop_mapping, but it's not blocking anything for now
19:41 cotto_work - hacked on PIRATE (bacek's nqp-rx PIR->pbc compiler)
19:41 cotto_work - completely awesome
19:41 cotto_work - also, really slow
19:41 cotto_work - jumped in on the deprecation discussion, got some good feedback (see questions to be asked during #ps)
19:41 cotto_work #will do:
19:41 cotto_work - more PIRATEing (yarr!)
19:41 cotto_work - set up a trac/git site *somewhere* for people to play with
19:41 cotto_work - look into either lazy PMC initalization or moving making ParrotInterp use PackFile PMCs internally
19:41 cotto_work #blockers:
19:41 cotto_work - OSUOSL not doing much with a test git/trac site
19:42 cotto_work - This does not bode well for when we actually upgrade.
19:42 cotto_work #eor
19:42 cotto_work q2q
19:51 eternaleye joined #parrotsketch
19:59 khairul joined #parrotsketch
20:06 khairul Did:
20:06 khairul - Handle exit/unhandled exceptions in a way to allow instruments to be finalized.
20:06 khairul - Cleaned up hook tables on destroy.
20:06 khairul - Updated the callback interface.
20:06 khairul - Hooks for dynops
20:06 khairul - Blog post at http://parrot.mangkok.com/?p=110
20:06 khairul Will Do:
20:06 khairul - Finish up tests on runtime library (Probe, EventLibrary)
20:07 khairul - Instrument the gc interface.
20:07 khairul - Plan on instrumenting the PMC vtable interface.
20:07 khairul EOR
20:14 darbelo joined #parrotsketch
20:24 tcurtis What I did:
20:24 tcurtis * Wrote some POD for PAST::Pattern and subclasses.
20:24 tcurtis - located in docs/pct/pattern/ in my branch.
20:24 tcurtis * Added some tests.
20:24 tcurtis * Rewrote PAST::Node.match and .subst methods
20:24 tcurtis - Now I  won't have to modify them everytime I add a new option to PAST::Pattern's relevant methods.
20:24 tcurtis * Posted a detailed description of the optimization developed in my blog post from Sunday and PAST::Pattern.
20:24 tcurtis - http://www.parrot.org/content/firs​t-optimization-pastpattern-detail
20:24 tcurtis * Implemented PAST::Pattern::Any.
20:24 tcurtis - Wrote tests for it.
20:24 tcurtis * Started working on GTK bindings for Parrot this weekend(very very very very early stage).
20:24 tcurtis - Segfaulting in my stub gtk_init call
20:24 tcurtis - Is there any way to get at the arguments in argc/argv format)?
20:24 tcurtis - Not going to work on it much during the summer, I expect.
20:24 tcurtis * Attempted to modify PCT::Node and subclasses to use actual attributes to see how it affects performance.
20:24 tcurtis - Not much progress, although I did notice some attributes and node types I missed due to them not having POD.
20:25 tcurtis * Possibly other stuff I've forgotten
20:25 tcurtis What I will do:
20:25 tcurtis * Write docs for PAST::Pattern::Any.
20:25 tcurtis * Improve existing PAST::Pattern docs.
20:25 tcurtis * Add support for the attributes and node types PAST::Walker and PAST::Pattern lack.
20:25 tcurtis * Work on some more optimizations.
20:25 tcurtis - Interested in feedback on possible low-hanging fruit.
20:25 tcurtis * Try to get someone else to start using PAST::Pattern.
20:25 tcurtis - If successful, get feedback from them on it:
20:25 tcurtis -- What it lacks
20:25 tcurtis -- What isn't convenient enough
20:25 tcurtis -- What isn't possible.
20:25 tcurtis -- etc.
20:25 tcurtis EOR
20:30 darbelo DONE
20:30 darbelo -   Made some more ops NFG-aware.
20:30 darbelo -   Dynamic code points now return Unicode character class information if queried.
20:30 darbelo -   Iterators now mostly work.
20:30 darbelo -   NFG literals now mostly work too. There's one TODO that I still haven't figured out.
20:30 darbelo TODO
20:30 darbelo -   Write more tests, find useful testcases.
20:30 darbelo -   Get started on making mixed-encoding operations DTRT.
20:31 darbelo EOR.
20:33 plobsing_work joined #parrotsketch
20:33 Chandon joined #parrotsketch
20:34 cotto_work hello
20:34 NotFound Hola
20:34 allison hi
20:34 tcurtis Hi.
20:35 mikehh joined #parrotsketch
20:36 allison I suspect chromatic is tied up at YAPC::NA
20:36 allison shall we get started?
20:36 allison First, how was our progress on the weekly priorities this week?
20:37 cotto_work bacek said that gc_massacre is blocked on the issue of how it should be tuned.
20:38 mikehh I think he said it needed tuning before it could be merged
20:39 allison ok, sounds like it's close, possibly this week
20:39 allison work on deprecated items?
20:40 cotto_work not too many deprecations but lots of discussion on the deprecation process itself
20:40 allison which is also important
20:41 Coke joined #parrotsketch
20:41 allison how about tickets?
20:42 allison Looks like we're hovering around 630, not bad
20:42 allison What should the weekly priorities be this week?
20:44 allison I vote to keep the same priorities this week.
20:44 mikehh gc_massacre, but it needs more eyse, chromatic, allison
20:44 mikehh s/eyse/eyes/
20:44 allison I can take a look at it
20:45 * allison makes note in her TODO list
20:45 allison Any questions?
20:45 * cotto_work has 2
20:46 allison cotto: go ahead
20:46 mikehh q1q
20:46 cotto_work Our deprecation process doesn't help anyone working on top of Parrot apart from keeping us from changing things too often.  Drupal does a much better job of making their changes known: http://drupal.org/update/modules .
20:46 cotto_work I propose that any deprecations, when implemented, require *at least* an accompanying wiki page describing the upgrade path and preferably a message to parrot-users.
20:46 cotto_work As I mentioned on parrot-dev, I'll be glad to modify the docs, the wiki pages and make sure the policy is followed.
20:47 cotto_work s/docs,/docs and/
20:47 mikehh +1
20:47 NotFound +20
20:47 mikehh agreed antway
20:47 allison Yes, I think that's an excellent idea, especially as we approach 3.0.
20:47 mikehh anyway
20:48 tcurtis q1q
20:48 cotto_work Great.  Writing deprecation policies is not quite as much fun as writing code, but it'll make our users much less crabby.
20:48 cotto_work eoq1
20:49 mikehh I'll try and help
20:49 cotto_work mikehh: thanks
20:49 cotto_work q2: We need to start some kind of signing for our releases.  bacek suggested that we could maintain a GPG-signed file that contains hashes of all released tarballs.  Any thoughts?
20:49 NotFound The "make sure the policy is followed" includes chainsaws?
20:50 cotto_work NotFound, no, but a revert wouldn't be out of the question.
20:50 allison cotto: that would require changing the file with each release. Is that a security advantage over a separate signed hash for each release tarball?
20:50 allison or, "Is there any security advantage..."
20:51 cotto_work I don't know of any.
20:51 cotto_work I'll be happy if we get some kind of GPG signing in place.
20:52 allison It is a good idea
20:52 mikehh some kind of separate md5/sha sum
20:53 allison sounds like it's at the stage of surveying some possibilities, and summarizing the advantages and disadvantages
20:53 allison i.e. We don't want to make it too difficult for packages to be built from our tarballs, or for users to interact with them
20:54 allison but also want an added level of security, verifying the source of the tarballs
20:54 allison do we have a volunteer to start a wiki page on the subject?
20:55 cotto_work sure
20:56 allison excellent, thanks!
20:56 cotto_work eoq then
20:56 allison tcurtis: you had a question?
20:56 tcurtis Yes.
20:57 bubaflub joined #parrotsketch
20:57 bubaflub left #parrotsketch
20:58 allison tcurtis: go ahead
20:59 tcurtis PAST::Pattern is now at the point where I can implement optimizations using it fairly simply. I'd like to know if anyone has any suggestions for possible low-hanging-fruit optimizations to work on? Which isn't technically a question, actually.
21:02 allison how much code analysis are you able to do so far?
21:02 allison some of the traditional low-hanging fruit would be loop unrolling or dead code removal
21:03 allison how about constant folding and propagation?
21:04 NotFound tailcall optimization
21:04 allison yes, that would be a good one
21:04 cotto_work function inlining
21:04 tcurtis Anything which involves looking for trees with attributes or children with certain properties is trivial. More complicated things can be done with a little more effort(anything is technically possible, but not necessarily convenient, since you can use a closure as a pattern).
21:04 allison identifying .return at the end of a subroutine and replacing it with .tailcall
21:05 allison (i.e. .return that returns the result of a sub call just before it)
21:06 allison tcurtis: so, it's essentially an attribute grammar, with synthesized and inherited attributes?
21:06 NotFound I've done that in winxed this week for the simpler cases, and parrot seems to be happy with it.
21:07 allison I would leave operation fusion/fission for a later technique
21:07 allison identifying invariant instructions inside loops could be a big win
21:07 tcurtis allison: I'm not sure exactly what an attribute grammar is.
21:07 cotto_work wikipedia has a long list of optimizations.  I'm sure that finding some to implement won't be a blocker.
21:08 spinclad (q1q)
21:08 cotto_work http://en.wikipedia.org/wiki/C​ategory:Compiler_optimizations
21:08 allison tcurtis: basically, it's searches for attributes over trees
21:09 allison to answer your question, I would start with the easiest optimizations to put in place
21:09 allison and build up to the more complex possibilities
21:10 allison you might use an existing simple demo language like squaak to demonstrate the possibilities
21:10 tcurtis I think I'll likely work on tail-call elimination and expanding on what constant folding I've already done initially. I've been using NQP-rx as my test language so far.
21:11 allison excellent (both good features to start with and good choice of language)
21:13 allison other questions?
21:13 allison spinclad?
21:13 spinclad (not so much a question as a comment coming from kid51's notes at http://thenceforward.net/par​rot/yapc_bof_20100621.txt:)  IMO lexicals/scope is another critical weakness that should be addressed as urgently as objects and metamodel, as great gains and synergy can come of it.
21:14 spinclad (i misdoubt that it's actively on the table at this parrotsketch)
21:14 spinclad (but i hope worth mentioning)
21:14 allison excellent summary, thanks for the link
21:15 allison I have a comment/question.
21:15 spinclad eoq
21:15 plobsing_work q1q
21:16 allison Actually, more making explicit something I've already been doing.
21:16 cotto_work mikehh had one too
21:16 allison At this stage in the project, we see a lot more people with architectural knowledge than we had 4 years ago.
21:17 allison I've been encouraging people to take on more responsibility not only in the code, but in the overall design of parrot.
21:17 ash_ joined #parrotsketch
21:17 allison to think through the overall system issues, and not just look at a problem locally
21:19 allison over the next year you'll see more of a focus on handing parts of the design to experienced project members (like cotto with lorito)
21:19 allison and on the collaborative design process
21:20 allison Really, it's pretty much exactly what we're doing now, just being explicit about it.
21:20 allison Does this sound reasonable/workable?
21:20 spinclad +1
21:20 allison chromatic and patrick are going to be talking about it with people at YAPC this week too.
21:21 mikehh +1
21:22 tcurtis +1, even from the viewpoint of someone who is not an experienced project member.
21:22 cotto_work Decentralization is great to a certain degree.  I'm happy as long as we still have someone with architectural vision and control.
21:22 mikehh that would make this meeting even more important
21:22 allison eoc/q (with plenty of room for people to keep talking about it and come back with thoughts later)
21:23 allison mikehh: definitely
21:23 allison mikehh: you had a question?
21:23 mikehh 2.6 is a major release, we need to consider merges/deprecations etc ASAP for it, I think Coke is the man there
21:23 spinclad through these meetings we can cultivate shared vision and control
21:25 mikehh also R" is comming up
21:25 mikehh R*
21:26 allison mikehh: deprecation notices for 2.6 is a good addition to the weekly priorities
21:26 NotFound Including experimental
21:27 allison One of the plans for YAPC this week was to sit down with patrick and make sure we get a good list of R*'s needs
21:28 allison those should definitely be high on the monthly release priorities
21:29 allison do we have anyone specifically focusing their parrot-time this month on preparing for R*?
21:29 spinclad (Coke, [particle]?)
21:30 cotto_work iirc Rakudo's happy with Parrot as far as R* is concerned.  Of course sitting down with pmichaud won't hurt it.
21:30 allison I suspect most of them are at YAPC, since they're the Perl-focused folks
21:30 whiteknight joined #parrotsketch
21:31 allison mikehh: does that pretty much cover your question?
21:31 mikehh Just wanted to bring that up - eoq
21:32 allison thanks!
21:32 allison plobsing: you had a question?
21:33 plobsing_work I'd like some elaboration on the "freeze/thaw sucks" part of the bof summary
21:33 allison we'd have to get someone from the meeting
21:33 allison but generally, the features of freeze/thaw are limited
21:34 allison there are many PMCs we can't adequately freeze/thaw
21:34 NotFound I've fixed one last week BTW
21:34 allison it hasn't been much of a problem so far, because we haven't made extensive use of the feature
21:35 allison but, something we need to work on (not the highest priority, but been on the list for a while)
21:35 bluescreen joined #parrotsketch
21:36 allison I suspect the YAPC folks will come back full of energy and ideas again this year, so we can ask for a more detailed summary
21:36 spinclad (haven't made use of freeze/thaw perhaps because couldn't?  catch-22)
21:36 allison spinclad: exactly
21:37 plobsing_work If there are parts of the freeze/thaw subsystem itself that need work (as opposed to simply PMCs not implementing interfaces), I'd be glad to help fix them
21:37 NotFound There are freeze/thaw fully untested.
21:37 allison excellent, thanks
21:37 NotFound Just testing them allows to find bugs.
21:37 allison plobsing: I suspect the next step will be a design review
21:38 allison (the next step after more extensive testing)
21:40 allison plobsing: so both testing and design could be areas where you help
21:40 allison did I miss any other questions, before we wrap up for the day?
21:41 allison alright, thanks everybody! talk to you next week
21:42 NotFound left #parrotsketch
21:51 darbelo left #parrotsketch

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