The Perl 6 design team met by phone on 11 April 2007. Larry, Damian, Allison, Patrick, Nicholas, and chromatic attended. These are the minutes.
Damian:
- despite family difficulties, I'm working very hard on the new verrsion of the POD 6 parser
- hope to have that out on the CPAN today
- I'm only tweaking the documentation now
- slowly reading and responding to Synopses
- that'll pick up its pace soon
Larry:
- came back from the east coast
- my talk at Brown went pretty well
- it was open ended late on a Friday afternoon
- it ran about an hour and a half
- mostly getting caught up after getting back, lots of little details
Patrick:
- working on the refactors of the regex test suite
- I've cleaned the tests up
- hopefully we can get a Pugs hacker to incorporate my patches back in
- the TODO syntax is really nice
- I'll probably post a message to p6c later today
- I could do the merge, but I'd rather do other things
- spent more time thinking about the overall compilation process for Perl 6
- I really like Larry's grammar
- I have to add a bunch of features to PGE to get it to work
Larry:
- I wrote it in an uncompromising fashion, expecting that you could cheat
Patrick:
- I will cheat in some ways
- I'm having to redo parts of PGE anyway for pieces of the new syntax
- so I might just bite off a bigger chunk so I can use more of the grammar
- it won't be that difficult
- the tricky part is dealing with the proto-regexes
- multiple regex rules under the same name
- I may just cheat by doing a brute-force implementation instead of trying to be clever about DFAs
Larry:
- my little cheat script built a non-multi version of that
- assumes that the order you define them is the order in which you match
- run that script on it and see what it spits out
- the principles of cheating are similar
c:
- Haskell does the same thing in its pattern guards
Larry:
Patrick:
- we're cheating on purpose here too
- also spent a lot of time looking at Flavio's miniperl 6 implementation
- I wonder if we should use that inside of TGE
- or a language like that
Larry:
- I saw that he has objects working on Parrot right now with that
Patrick:
- that might simplify the initial stages of compiler writing
- that wouldn't take too much to implement it as a native compiler under Parrot
- it wouldn't be too hard to extend that
c:
- does PAST-pm handle the semantics it needs?
Patrick:
- pretty much
- it needs a few more pieces, but I'm happy with what it supports
- things seem to be working out pretty well
- we need to figure out how to do classes
c:
- the tree right now seems to express expressions easily
- but there are other entities such as classes and subs that it doesn't
Patrick:
- we don't have nodes for those yet
- but they should be easy to add
- I plan to implement those as a specific HLL needs them
- Allison needed slurpy for Punie
- so we added them there
c:
- giving a talk at Portland Perl Mongers tonight
- an overview of PIR syntax, a tour of Partridge, and a tour of the source tree
- hope to show that we use a lot of Perl 5 and that there are plenty of ways to contribute
- also refactoring some grotty C code
- that sucks
Larry:
- isn't that what we've been doing for the past seven years?
Allison:
- I thought it was more like 20
- worked on Punie as a break from PDDs and such
- found a weird double-signature of join
- launched the objects PDD last week
- this week we're pushing to implement what it specifies
- clarifying the last-minute inconsistencies found during implementation
- the autocloning within certain instantiated class idea didn't work out
- now I'm porting the tests of our SMOP prototype to the new implementation
- give it a complete run through the metamodel
- Patrick, I checked in a couple of TODO tests for Punie
- they're for parameter passing (slurpy and flattening)
- if it gets working sometime in the near future, they'll start to pass
- I also added
is_slurpy()
to PAST::Var
c:
- I should be able to add the TODO test checker pretty transparently
Nicholas:
- Patrick committed a change to S05 a while back
- it moved things over by a column and made it preformatted text
- POD 6 supports tables...
Damian:
Nicholas:
- will the Synopses move over to POD 6 to take advantage of its better features?
Allison:
- our tools to publish them on the web site don't support POD 6 at the moment
- not right away
Larry:
- that'll be something we can delegate eventually
Damian:
- the only two translators with this module are to plain text and to XHTML
- the XHTML one is purely descriptive
- you can put any CSS stylesheet on it to get the appearance you want
- we may end up with a better outcome anyway
- have people redo their CSS to take advantage of the output of the new features of POD
Allison:
- when I added XHTML output to
POD::Simple
, I found a lot of other features with POD::Simple
that people use
- generate ToC or process large batches of files with intertextual links
- I know we'll have to add support for that somehow
Damian:
- that's one of the goals of POD 6
- semantic markup, even if we had to fudge
I>< and B><
Larry:
Damian:
- I think we can sell it
- well, I think I can sell it
- I'm also contemplating revisiting formats in S07
- figure it's worth seeing if simplifications are possible
- I've had plenty of time to play with the module written for it
- can see what's useful and not so common
- I'll do that when I get some time
Nicholas:
- are there any formal plans on how
pack
and unpack
will work?
Larry:
- view them as a co-processor type of sublanguage
- you can derive the
pack
and unpack
templates from more than just hard-wired "here's how you do it"
- you can ask a class for its
pack
or unpack
template
- otherwise they're pretty much the same
Nicholas:
- I figure you're basically happy with how it works
- it'll basically work the same
- so you won't have to spec it in detail
Larry:
- basically yes
- we have to make sure that the underlying API is sane
- then people can build on top of it as needed
Jesse:
- We've got our first two Perl 6 microgrants.
- Steve Peters is working on improving Parrot portability and putting structure in place to make sure it stays portable.
- Phil Krow is working on DBIv2 hackery as a combined P6/DBI microgrant. My best understanding is that he's basically doing an h2ph for Java code (particularly the JDBC)