Summer of Code Ideas
This is a random collection of what students could do in Google's Summer of Code project in 2009 (not yet officially announced, but it will take place)
If you add another idea here, please append your nick name, so that people know whom to contact for more information or shared brainstorming
Improve testing functions of Parrot (like we still need warns_ok() I think) (leto)
Help writing the Prelude (ie the run-time part of the compiler) in Perl 6 (moritz)
Basic cryptography routines (leto)
YAML support; a PGE grammar to parse YAML, and a Perl 6 wrapper to enable Rakudo to use the result. (masak)
The test suite always has much work to offer. A student could generally improve it (as done by Auzon last year), or pick a particular topic and focus on that. More specific ideas welcome.
If somebody wants to focus on a specific topic, these need lots of care:
- Object system: needs systematic testing of the various accessing schemes of class and instance attributes (has $.foo, has $foo, my $foo, our $foo), inheritance, multiple inheritance, role composition, conflict situations etc. as well as fundamental things like multi method dispatch and meta-object programming.
- Regexes and Grammars: This is a basically unlimited field, and while there are lots of tests already, many more need to be written: combinations of modifiers, multiple inheritance of grammars, and more esoteric things like recursion into subrules with ~~.
- S06: subroutines, signatures and macros need more systematic tests (for example typed slurpy params and their effect on multi dispatch, systematic tests of combinations of traits (is rw, is copy, ...) with other features (typed, named, positional, slurpy, ...)
Write user-level Perl 6 documentation. This involves developing a model for making documentation easily accessible from different programs, translating the very terse and technical language of the synopsis into end-user-ready language, setting up a glossary and working out examples (moritz, masak)
Canonical Problem Set for Perl 6 (leto)
- SMOP uses a reference counting garbage collector, and mildew is curretly with several memory leaks. A project to solve that memory leaks is very much interesting for the future of SMOP and should guide you through all the funghi. (ruoso)