Categories
Posts in this category
- A shiny perl6.org site
- Creating an entry point for newcomers
- Sprixel, a 6 compiler powered by JavaScript
- Another perl6.org iteration
- Blackjack and Perl 6
- Why I commit Crud to the Perl 6 Test Suite
- Report from the Perl 6 Hackathon in Copenhagen
- Custom operators in Rakudo
- Defined Behaviour with Undefined Values
- Dissecting the "Starry obfu"
- Perl 6: Failing Softly with Unthrown Exceptions
- The first Perl 6 module on CPAN
- Google Summer of Code Mentor Recap
- Building a Huffman Tree With Rakudo
- Immutable Sigils and Context
- Is Perl 6 really Perl?
- Perl 6: Lost in Wonderland
- Lots of momentum in the Perl 6 community
- Musing and the future of feather and the Pugs repository
- Musings on Rakudo's spectest chart
- My first executable from Perl 6
- Trying to implement new operators - failed
- Let's build an object
- Perl 6 is optimized for fun
- How to get a parse tree for a Perl 6 Program
- Perl 6 in 2009
- Perl 6 ticket life cycle
- The Perl 6 Advent Calendar
- How to Plot a Segment of a Circle with SVG
- Publicity for Perl 6
- Rakudo architectural overview
- Rakudo Rocks
- Rakudo "star" announced
- Rakudo's rough edges
- Rats and other pets
- Releasing Rakudo made easy
- Set Phasers to Stun!
- Starry Perl 6 obfu
- Recent Perl 6 Developments August 2008
- Strings and Buffers
- Subroutines vs. Methods - Differences and Commonalities
- A SVG plotting adventure
- A Syntax Highlighter for Perl 6
- Test Suite Reorganization: How to move tests
- The Happiness of Design Convergence
- Perl 6 Tidings from September and October 2008
- Perl 6 Tidings for November 2008
- Perl 6 Tidings from December 2008
- Perl 6 Tidings from January 2009
- Perl 6 Tidings from February 2009
- Perl 6 Tidings from March 2009
- Perl 6 Tidings from April 2009
- Perl 6 Tidings from May 2009
- Perl 6 Tidings from May 2009 (second iteration)
- Perl 6 Tidings from June 2009
- Perl 6 Tidings from August 2009
- Perl 6 Tidings from October 2009
- Timeline for a syntax change in Perl 6
- Visualizing match trees
- We write a Perl 6 book for you
- When we reach 100% we did something wrong
- Where Rakudo Lives Now
- Why was the Perl 6 Advent Calendar such a Success?
- What you can write in Perl 6 today
- Why you don't need the Y combinator in Perl 6
Tue, 19 May 2009
Perl 6 Tidings from May 2009 (second iteration)
Permanent link
Shortly before my vacations (Ferie i Norge!) I want summarize what happened in Perl 6 land.
Specification
Many small corrections improved the consistency of the specification, but the biggest area of development was the language mutability and interaction of various languages.
There are various dialects that inherit some of the main language's syntactic features, but are quite different: quotes, regexes, quasi quotes (for macros), transliterations etc. Those are now called slangs, and for example declaring a new backslash assertion in a regex now works like this (r26734):
augment slang Regex {
token backslash:sym<y> { y\w+ }
}
The various slangs are available via the ~ twigil, for
example $~Regex refers to the current braid of the
Regex slang (r26733).
Implementations
Rakudo
There were, as usual, many activities in Rakudo. Jonathan
Worthington finished his Hague grant on the multi dispatcher and
object orientation, and applied for a new one, covering (among other
features) parallel dispatch (of the form
@array>>.method(@args)) and user defined
traits. He started his work already (and seems to have finished a good
part already), even though the grant committee
hasn't yet approved.
He also implemented much nicer error message: they now contain a stack trace of the Perl 6 functions only (used to be also internal subs), and each position in the call chain is annotated with file name and line number. This brings Rakudo an important step closer to real-world usability.
Patrick Michaud implemented basic parsing of the «...»
quotes, fixed some Unicode issues, and implemented
operator definitions and overloading (things like precedence and
associativity are still missing, but it's very impressive
nonetheless).
chromatic tirelessly optimized Parrot and Rakudo startup (Rakudo startup used to be about one second) with good success.
Stephen "Tene" Weeks put Rakudo into its own high level language (HLL) namespace, which is Parrot's tool to avoid leakage of Parrot symbols into Perl 6's namespaces, and to simplify interaction with other languages. Sadly this make Rakudo a bit slow, eliminating about half of chromatic's speed improvements.
SMOP
Paweł Murias continued the refactoring of smop and mildew, working (as far as I can tell) on attributes, method signatures and control exceptions.
Miscellaneous
Smartlinks
Gabor Szabo released the smartlinks utility as Text::Smartlinks to CPAN, and implemented the linking to the various S32 documents, and published a keyword index to the synopsis documents.
Test suite
In the test suite there are 50 to 60 files (with a total of about
230 tests) left that are under
consideration/review to moved into t/spec/, the
official part of the test suite.
Commit activity in the test suite:

(The last spike is caused by me using git-svn. Every other weekend I'm offline and do some work on the test suite. With svn that resulted in one huge commit, with git-svn that results in many more smaller commits.)
I did some useless statistics on who committed how much, and found that there were twelve hackers who had at least 100 commits to the test suite each:
| # Commits | Nick |
|---|---|
| 1259 | moritz |
| 916 | audreyt |
| 548 | iblech |
| 279 | lwall |
| 230 | jnthn |
| 212 | pmichaud |
| 152 | corion |
| 148 | agentz |
| 145 | putter |
| 123 | Stevan |
| 117 | cosimo |
| 107 | Auzon |
We had commits from 132 different accounts in the test suite.
Web.pm
The TPF grant for producing a Web framework on top of Perl 6 seems to progress nicely, for example it enabled the quick building of a blogging application.