Perl 6 Design Minutes for 06 September 2006

chromatic on 2006-09-09T05:58:17

The Perl 6 Design team met on 06 September 2006. The attendees were Allison, Nicholas, Jesse, Damian, and chromatic. These are the notes.

Allison:

  • small hardware glitches here
  • still working on the IO PDD
  • big thing at the moment
  • it hasn't congealed into releasing a new version yet
  • needs to happen soon
  • I just need to give it an entire morning by itself
  • or a whole day

Damian:

  • things in POD land are dry
  • flying out for Europe on Sunday
  • imagine the usual frenzy I'm experiencing
  • working on the perldoc parser for new POD
  • I don't want to put things in the spec that I can't actually parse
  • think that's very insightful of me
  • hope to send out another draft to the list later today
  • I've specced out what tables do and have written a parser for it
  • you can get most of the things that most people want
  • it turns out to be incredibly useful to have tables
  • I think they should be in the core

Allison:

  • I highly agree

Damian:

  • I think people will be pretty happy with what you can do with these things

Jesse:

  • but people will use them for layout, not semantic markup

c:

  • have you seen MSA? We have bigger problems

Allison:

  • does your Text::AutoFormat handle tables?

Damian:

  • I've been working on Text::AutoTable for the past year
  • it figures things out based on what you've written

Allison:

  • has to be nroff/troff-able

Damian:

  • you can do any kind of table you want
  • it turns out to be fairly straightforward
  • you can get a lot of power out of it
  • still parseable
  • the trickiest part is that if you want to have asymmetrical tables, you end up with a recursive decomposition of the table
  • you only get to have square tables
  • within any square of the table, you can have another square table
  • you can break it down irregularly as well
  • easier to show than to demonstrate

c:

  • just say GridBagLayout

Damian:

  • I'll send the description today
  • the supporting code needs a little cleanup
  • not releasing anything I don't know how to parse
  • I've incorporated a lot of Hugo's suggestions and observations
  • otherwise, just preparing to be away for four weeks

Nicholas:

  • clkao pestered me and Rafael about doing read-only aliases
  • think it's Data::Bind
  • it uses magic, which is not a perfect solution
  • Rafael and I are stuck on the core changes
  • we could free up an SV type... and make it a proxy type (Rafael later noted that he suggested adding an SV type)
  • it's just not compatible with XS code
  • not sure what to do
  • not expecting anyone to have a suggestion immediately

Jesse:

  • maybe another wizard on p5p will have an idea

Nicholas:

  • that's a good idea
  • Simon Cozens was trying to work on continuations
  • seemed promising for a bit
  • he and chromatic thought maybe about using ithreads code
  • think you need to work on the stack and context code
  • I'm not going to work on this
  • Simon has gone quiet
  • we talked about it, but it doesn't seem impossible
  • finally, Rafael suggested that he'd like to get 5.10 out in six months
  • the 6 on 5 changes may not be done and probably won't be releasable by then (Rafael says that there is no full specification and thus no concrete plan for the changes)
  • might take a 5.12, with binary incompatibility
  • not clear how that might happen
  • Rafael suggested considering compile-time flags in to enable these things
  • I've considered that for 5.8, but it's a maintenance nightmare

c:

  • will be deploying Parrot in production hopefully in the next week
  • hope to have more information there
  • also will try to have more external API thoughts in public this week

Damian:

  • think it's important for 5.10 promptly
  • there's an enormous amount of new features there
  • delaying it for continuations (which would be great) seems like a mistake
  • a lot of organizations only upgrade on major upgrades
  • I'm leery of having binary incompatibility within one upgrade number

Nicholas:

  • the default build would be binary compatible
  • the architecture name *could* changes
  • you can build without PerlIO for example
  • Rafael seems keen to get 5.10 out
  • there are a couple of little features related to prototypes
  • but 6 on 5 shouldn't hold up 5.10

Jesse:

  • I'll be traveling next week
  • Allison, can you run things if I'm not here?
  • EuroOSCON is the following week
  • who'll be there?
  • Allison, Damian, no Larry
  • chromatic, can you do that one?

c:

  • I can do that

Jesse:

  • I'll e-mail Patrick and keep him up to date

Damian:

  • I would like feedback on the Perldoc 6 draft if possible

Nicholas:

  • if tables work, I could see people using it in Perl 5

Allison:

  • it wouldn't be difficult to add that into Pod::Simple

Damian:

  • especially if you use my parsing code

Nicholas:

  • how backwards compatible is it?

Damian:

  • it doesn't like =cut, because it doesn't exist in Perldoc 6
  • that causes problems
  • the new perldoc works differenly from POD 5
  • you fall back into ambient code as soon as you get out of a POD construct
  • that is, =begin something -> =end something or just =for something take you back to code

Allison:

  • long paragraphs?

Damian:

  • say =begin pod -> =end pod
  • I plan to make a filtering module that allows you to use perldoc;
  • then you can document your Perl 5 code and the filter will strip it out
  • once I get the parser stable, I'll run lots of Perl 5 docs through it to see how badly it mangles it
  • most won't be too bad
  • it'll have extra =cut blocks that don't do anything
  • but it'll fall out of POD too often