Thursday October 09, 2008
Perl 6 Design Minutes for 17 September 2008
The Perl 6 design team met by phone on 17 September 2008. Larry, Allison,
Jerry, Jesse, and Nicholas attended.
- gave a presentation last night on Perl 6 and Parrot to the Seattle Perl User Group. It was well received.
- what is the ownership of Perl test suite?
- ask about the Linux kernel for an analogous situation
- the licence was fixed from the beginning. Audrey did it
- it's Artistic 2, early draft.
- I thought it was an early draft.
- yesterday I got the September release of Parrot out.
- It went so smoothly. The documentation is good. Karma points to everyone who put that together. It's working out really well.
- I've been answering questions, guiding other people to do stuff.
- Fine by me, but not done much core hacking. Guiding is good.
- Statement modifiers after listops now work.
- C now a named unary, with the precedence correct.
- I'm answering questions even off the Perl list and subscribed to the November wiki list
- I chime in, see where they are running into Problems.
- I'm giving them advice in designing wikis [http://www.pmwiki.org/]
- Jerry joined it too
- Yesterday put a FAQ on November Wiki about how to subscribe to the list
- I've been talking with Jonathan about design issues.
- We still have problems with lexicals - putting ideas forward.
- Putting ideas forwards on perl6-language about how lexicals and others should work. Got feedback, which is good.
- There's an impedance mismatch between Perl 6 and Parrot about how things should work.
- I have a design, where we don't need scalar PMCs for every aggregate type. I [will?] put it on the web.
- Jonathan and I are working on it tomorrow.
- Good not to have all those GC-able PMCs around.
- It's not a pretty design, but it should be good enough to work.
- This week I will be working on lexicals, and getting list interpolations stored correctly. These are ongoing forms for those using Rakudo.
- This weekend going to restart "this week...", but it might be every 10 days. 2 weeks is too slow, 1 week is to frequent.
- Are the milestones still good?
- I might have knocked one off. I'm doing it by RT ticket. The next to be knocked off is list assignment. We may get lazy lists as part of that as well, but still I'm still thinking.
- I have a fabulous cold. My brain is in sideways.
- "Tweaking things here and there as people point out things."
- Tweaking STD.pm as people do things in tests.
- For example, people check in tests and don't syntax check them very well, especially if as TODO tests. For example, unbalanced parentheses.
- STD.pm tends to catch those.
- What people have been saying, eg how lists work.
- My thinking is of a more general nature, how much we expose the indeterminacy of the world, how to balance out eager vs lazy; expectations of how assignment will work.
- Combining paradigms, and how it requires us to set up things like we did with the regexps.
- Some are deterministic, but naturally the non-deterministics.
- Whether they work the same way, or assignment works the same way, eager or lazy, and whether the users' control knob can deliver
- Totally eager isn't going to fly, but "as eager as it can be until it arrives at some
Inf", or whether list policy as general says "eager on easy, lazy on hard" - haven't decided that yet.
- POD parsing -- defined POD such that we can say
- This can go to end of the file if there is no corresponding
- Is that a general policy, for unbalancing?
- Or should end be a special case;
=begin end, or
=begin data feels more like Perl 5
- should we have a different keyword other than
- An adverb, "begin", go all the way to the end, make it explicit.
- anything more, on canonicalising the core test stuff?
- the test functions? nothing has been done, but no reason not to.
- I've been spreading the word "this may be coming"
- any feedback, let me know
- so far, uniformly positive. People are "oh, that would be nice"
- One thought
- How eager is assignment?
- Some thoughts, assignment is naturally eager. It falls out from copy semantics. One can't copy unless source is eager or immutable.
- Else you can't copy unless you snapshot the iterator.
- Eager might fall out of the copy semantics.
- 5 failing tests on Macs.
- Almost done, taken 2 weeks longer than I hoped.
- As I make my way through the subsystems, cleaning the problems, each has fewer problems for the surrounding code.
- The lexical is system on my list, after we've found the last few problems.