Stories
Slash Boxes
Comments
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)

chromatic
  (email not shown publicly)
http://wgz.org/chromatic/

Blog Information [technorati.com] Profile for chr0matic [technorati.com]

Journal of chromatic (983)

Tuesday September 15, 2009
02:46 PM

Perl 6 Design Minutes for 09 September 2009

[ #39631 ]

The Perl 6 design team met by phone on 09 September 2009. Larry, Allison, Patrick, Jerry, Will, Nicholas, and chromatic attended.

Patrick:

  • added contextual variables to Rakudo
  • they seem to work just fine
  • added a couple of ops to Parrot to make that easier
  • PCT already uses contextuals in PGE and NQP
  • cleared up a few specification questions
  • answering questions online

Jerry:

  • renewed parrot.org's SSL certificate with Will
  • preparing for the releases of Parrot and Rakudo next week
  • I'm doing both of them

Patrick:

  • he's the Release Iron Man

Jerry:

  • thought about doing the Rakudo release live at the Perl meeting

Patrick:

  • if you skip the spectests, you can do it inside of 30 minutes
  • do a practice release during the meeting

Jerry:

  • it's a good idea

Patrick:

  • most people expect a release on Thursday
  • they work on the NEWS and announcements after the Parrot release
  • you can do your test live and find out where the bugs are
  • two other people have done it already
  • there's never been any other trouble

Allison:

  • lots of travel and bizarre relocation tasks
  • working on the objects PDD
  • about to send a message to the list
  • mainly roles that needed work
  • spent some time looking over the JIT deprecation and replacement proposal
  • wanted an initial plan to figure out where we're headed
  • we're not just ripping it out without a plan to replace it
  • haven't touched PCC this week
  • haven't had time to look at it
  • after I put in the PDD review, I'll switch back to that
  • speaking at the JVM languages summit next week
  • speaking at the Bay Area Python users group after that
  • might have some interesting perspectives from the Unladen Swallow group
  • they're also building on LLVM

Larry:

  • mostly spec work this week
  • originally introduced .p6 as a way to indicate you want to start up parsing in Perl 6
  • now any file extension which contains the digit 6 can indicate the desire to use Perl 6
  • if you write something crazy, you get what you deserve
  • some questions about the scope of context variable searching
  • does each dynamic scope look outward from its immediate lexpad or not?
  • I say not
  • masak wanted clarification of the semantics of break, so I rewrote that section to indicate the interaction of compile-time semantics with control exceptions and leave
  • upon advice of counsel, I obliterated the fallback of contextuals to %ENV
  • will make Patrick happy

Patrick:

  • I don't mind either way
  • I know I had to fix up a bunch of PHP code for a similar thing

Larry:

  • it would open us up for a cheap shot on the security front
  • I'd rather have someone ask for that explicitly than provide it by default
  • places in the docs did things like use global to pull in stuff from already-existing packages
  • I decided those should be define instead of use
  • Moritz and I documented the use of ... classes to forward declare class names
  • nailed down when the blocks of packages and modules and classes execute
  • and when, with respect to compilation and usage, the modules defined in other files execute their code
  • answering a lot of questions
  • shepherding new users
  • poking Daniel Ruoso on the subject of time standards
  • he's working on the specs for that
  • not a lot of hacking
  • fixed a bug in the parsing of hyper-minus with Texas hypers
  • it mis-saw << -> >> as an infix operator
  • now it only does that if it's inside of a meta operator
  • fixed a bug in gimme5 that caused warnings
  • added done_testing function to STD's Test.pm
  • mostly working on the open source ecology talk for work

c:

  • profiling and optimizing
  • setting up the default, optimized, non-developer Parrot to run faster
  • finding and fixing bugs

Patrick:

  • what kind of work does Role need in the Objects PDD?

Allison:

  • it needs testing
  • I'm not confident that it works correctly
  • missing extensive tests
  • I have a list of use cases
  • missing one big feature
  • Class doesn't support the exclude and alias options to support Role
  • Role only supports those for methods, not for attributes
  • that's a matter of adding a few lines of code to one method in Class and one in Role
  • not a big thing

Patrick:

  • Rakudo uses Role
  • it works well enough for whatever we do
  • Rakudo subclasses it into P6Role to give it some of its own behaviors
  • the base PMC is good enough for our uses
  • the P6Role PMC is minimal
  • it overrides find_method and get_string with Rakudo-specific behavior

Allison:

  • I don't know if does reports accurately in all cases
  • mainly there are some things I'm not sure of yet
  • there are implementations present
  • most of the work is reviewing the tests to see if they cover behavior correctly
  • I seem to recall it only has a couple of tests

Patrick:

  • I know it needs more tests

c:

  • all of our PMCs do

Patrick:

  • given a Class object, there's no easy way of finding out if instances can do a method
  • I have to create an instance and test that

Allison:

  • the Class object is supposed to report on the methods its instances will have

Patrick:

  • that's not my experience

Allison:

  • what's more useful to you?
  • it makes more sense to me to ask the Class

Patrick:

  • because Class objects are instances of Object, they delegate to their metaclass object
  • just as Objects tend to do
  • it answers the question about what the class object can do, not instances of the class
  • it's consistent with other parts of the system

Allison:

  • Class doesn't implement can, so it falls back to the default PMC
  • are you happy with the current behavior?

Patrick:

  • we don't use it anyway
  • we have protoobjects
  • it's a common question that comes up anyway
  • given a Class object, there's not an easy way to find a method for an instance
  • it falls back to Object, and gives you a Class method

Allison:

  • the find_method method looks it up for instances

Patrick:

  • they do different things?

Allison:

  • yes

Patrick:

  • I'll pass that on to people who are looking for it
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.