Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

chromatic (983)

  (email not shown publicly)

Blog Information [] Profile for chr0matic []

Journal of chromatic (983)

Thursday October 30, 2008
05:13 PM

Perl 6 Design Minutes for 29 October 2008

[ #37768 ]

The Perl 6 design team met by phone on 29 October 2008. Larry, Allison, Patrick, Jerry, Will, Jesse, Nicholas, and chromatic attended.


  • slowed down on MMD bug fixing
  • cleaning up the last bugs now
  • started the IO branch
  • getting the code in much cleaner working order
  • eliminated the old pseudo-object system we had
  • changing that to use the current, existing object system
  • it looks like it will work cleanly
  • mostly can keep most of the old code
  • just change it to use objects, not just function pointers
  • the initial FileHandle PMC
  • moved the Unix, Windows, and Standard IO functions into a single set of functions loaded by Configure
  • moving the UTF-8 stuff into utility functions, instead of layering it on top in a difficult-to-maintain fashion
  • looks like we won't use roles at all for IO
  • I thought we might need them to emulate layers
  • it turns out that most layers weren't composed behavior at all
  • you need this set of functions on one OS and this set on another
  • roles don't really solve that


  • delegation, not composition


  • it's really a lower level than that
  • operating system utility libraries
  • an interface to the OS
  • you don't want to interact with the OS directly
  • behind the interface, you compile it to do a different thing on a different OS


  • Daniel Ruoso asked me on IRC about adding pointers to every SV
  • he's looking at that for SMOP
  • hope to have the release out on the weekend


  • still in the middle of doing the doctor thing on my shoulder
  • going in for an MRI this afternoon
  • making arrangements for my December trip to Australia
  • maybe or maybe not Amsterdam, depending if we can work it out
  • most of my work has been responding to various things that the SMOP folks and the syntax highlighter folks have found difficult in the STD parser
  • refactoring some of that
  • parameter parsing was not right in various ways
  • the parsing for things like POD comments was suboptimal
  • tended to attach it to the previous block where it ought to be independent
  • parsed better now
  • there were difficulties parsing assignment operators
  • tended to parse a <== as less-than equal turned into an assignment operator
  • nipping and tucking on trying to cut down memory usage and the amount of cursor construction that has to go own
  • figuring out which cursors can be treated as mutable
  • and when we have to do copy-on-write
  • in general thinking about how I can make the parser faster
  • hopefully get rid of TRE over the next month or so


  • things are going well
  • just returned from the Google Summer of Code mentor summit
  • Jonathan Leto and I represented TPF
  • had a good time
  • I plan to write something about it, when I have the time
  • mostly devoting tuits to the Parrot Developer's Summit, coming up in the middle of November
  • expect that to be the case for the forseeable future
  • unfortunately lost the tuits I had to do namespace importation in Rakudo
  • it's very close to being done


  • worked more on fixing lexicals in Parrot
  • getting them to work the way we need them in Rakudo
  • down to 16 failing core tests
  • most of those have to do with relying on autoclosing called subroutines
  • working on a design and implementation for that
  • shouldn't take too long
  • it's going cleaner than I thought, assuming I haven't made gross errors
  • have worked on cleaning up exception handling from the PIR perspective
  • trying to get us caught up to date on that
  • published a lengthy note to the list last night describing how we should write exception handlers
  • otherwise, responding to the Rakudo ticket queue
  • either applying patches or describing why they won't work
  • getting feedback to people submitting patches


  • I've been fixing a lot of bugs
  • wrote up how I fixed autoboxing primitives in MMD
  • fixed at least one segfault for Will, have more to look at
  • also fixed a couple of memory leaks
  • the default PIR programs now should never leak any memory
  • but IMCC still leaks memory in some cases
  • will continue to fix any segfault reproduced as nicely as Will has done


  • the lead-in to that
  • spent most of this week trying to reduce several thousand lines of Tcl into a small PIR program so I could get past a segfault


  • one nit in the exception handler API
  • when you mark it as not having handled something, you set it to zero


  • you rethrow it


  • that's going away
  • at the moment, because exception handlers are automatically disabled, you re-enable it by setting it to zero


  • that was a hack for backwards compatibility
  • it's going away


  • I hate magic numbers


  • I hate the fact that 0 re-enables it
  • I'm about to run the tests that turn off the auto-disable feature
  • I have everything that the pops are where they should be
  • I'll see what breaks


  • any failures should be updated pretty quickly
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.