March 19, 2010

Google Summer of Code 2010

I am delighted to announce that TPF has been accepted as a mentoring organization for this year's Google Summer of Code.

Google Summer of Code is a program that offers stipends to student developers for writing code for open source software projects. Last year we had nine projects accepted and we would love to have more this year.

Jonathan Leto is our chief organizer and he is looking for mentors and project ideas. The deadline for student applications is the 9th April and and if you are interested in working with us please join our IRC channel, #soc-help on, and the mailing list.

March 15, 2010

Grant Update: Improvements to Dist::Zilla

Ricardo began work on his grant at the beginning of the month and has made steady progress, completing the first two deliverables (logging and testing libraries) and has begun writing core tests, which should be done over the next few weeks. Has published status updates every few days so far and plans to continue doing so.

March 15, 2010

Grants Failure: Tcl Tk Access in Rakudo and Perl Cross-Compilation for WinCE and Linux

While TPF grant program has as its main goal the motivation of Perl users to perform new and challenging projects for the Perl Community, sometimes it fails. Fortunately it doesn't happen with all grantees and all the time.

This time I am closing two grants from Vadim Konovalov: Tcl/Tk Access in Rakudo and Perl Cross-Compilation for WinCE and Linux. We, at TPF, know that Vadim did some work on both grants (mostly on the first), but the grants were accepted in September 2008 and Vadim stopped answering emails and giving feedback a lot of time ago.

We hope Vadim will continue his work whenever he has the motivation and the time, but TPF can't keep the grant open more time.

March 15, 2010

Grant Update: Corporate, Embedded, and Multi-user Perl on Windows

Curtis Jewell just sent TPF an update on his grant:

The 5 main points of my grant, as far as releasing an improved Strawberry Perl, were:

__"Is compiled as a "merge module" (.msm) file that can be included in other .msi files, as well as an independent .msi file."

This was done as of the January 2010 release of Strawberry Perl, although I'm not publicizing it heavily until the April 2010 release.

However, the "Strawberry Perl Professional" alpha that was released in late February uses the merge module that was generated by the January 2010 release as its "underpinnings", and the currently-released-on-CPAN development versions of the Perl::Dist::WiX/Perl::Dist::Strawberry creation toolchain can create and use merge modules.

"Can have the base drive (and possibly directory name) passed in to the merge module."

It turns out that you insert the merge module under a directory entry, so completing the merge module made this automatic. However, this isn't useful without the next point.

"Can be installed to any drive (the top directory may still be named "strawberry" under the root of the selected drive)"

This is what I'm working on currently for the April 2010 release, as well as being able to build a 64-bit version of Strawberry Perl (for 5.11.x+ versions of Perl - which means a non-beta 64-bit version may not be available until May or June)

The intention is to release a beta with this (I think of it as "relocatability") working soon after 5.11.6 or 5.12.0-RC1 is released.

Unfortunately, I've hit a bug in Perl 5.10.1 - it doesn't relocate the vendor/lib directory like the other two standard directories: . I'll need some assistance (i.e. a patch that fixes that bug, or guidance from p5p if more information is needed) in order to get 5.10.1 to relocate safely.

5.11.5 relocates all 3 standard directories, so it's fine, and I can test that relocation works with 5.11.x versions, until a patch can be created for 5.10.1.

"Separates the modules installed with the initial installation from modules that the user / administrator installs, by using the "vendor" directories for module installation that can be configured when compiling Perl."

This was done in the October 2009 release of Strawberry Perl. This has created a problem with implementing the relocation portion of the grant, as noted above.

"Includes a script that saves the settings that local::lib creates within the Windows Registry."

A first draft of this is currently in Adam Kennedy's svn repository (it needs debugged) as

March 13, 2010

Grant Update: Perl Survey

Kieren is presently finalizing code for the new Perl Survey and plans to have the new system up and operating soon, when he will conduct a pilot program to shake out the kinks in the project.

After that, all that remains is to react to the results of the pilot, run the survey proper, and analyze the final data gathered from it.

The source code is currently visible on GitHub.

March 09, 2010

$foo TPF Interview

Earlier this year Renée Bäcker from $foo magazine interviewed Richard Dice and me to find out our thoughts on TPF in 2009 and our hopes going forward. An English version pdf of the interview is available online.

March 05, 2010

Grant Accepted: Fixing Perl5 Core Bugs

I am pleased to announce that David Mitchell's grant application has been successful. I would like to thank all the community members who took time to provide feed-back on this proposal and whose generous contribution to TPF has allowed us to fund this grant.

March 05, 2010

Grant Update: Archive::Zip Fixes Complete

Alan Haggai's work on the Archive::Zip library is complete. Numerous onerous bugs have been corrected, and the library can now handle far more kinds of data. A developer release should reach the CPAN soon, hopefully to be followed in short order by a new complete release of the library.

March 04, 2010

Hague Grant Application: Numeric and Real Support

We have received a Hague grant request, submitted by Solomon Foster.

Before the Board votes on this proposal we would like to get feedback and endorsements from the Perl community. Please leave feedback in the comments or send email with your comments to karen at

Project Title:

Numeric and Real Support


This grant aims to refactor Rakudo's current numeric classes to support the
Perl 6 specification's new Numeric and Real roles, in the process making it
easier to create new numeric classes.

Benefits to Perl 6 Development:

In late 2009, in response to users' and developers' experiences with Rakudo,
the Perl 6 specification was enhanced with the creation of the Numeric and
Real roles. This grant's purpose would be to implement those roles and
refactor Rakudo's core numeric type implementations to work with them,
including Int, Rat, Num, and Complex. Special care will be taken to simplify
adding new classes that fill the Numeric and Real roles, as there are more in
the specification that will need to be implemented at some point. In addition,
the relevant portions of the test suite would be revamped. Straightening this
all out before Rakudo * will present the newcomers to Perl 6 with a clean,
consistent numerical interface instead of the current obsolete hodgepodge.


D1. Implement Numeric. S32::Numeric: "Numeric"
D2. Implement Real. S32::Numeric: "Real"
D3. Refactor Int, Rat, and Num to be Real. S32::Numeric: "Int", "Rat", and
"Num", also S02::Bits and Pieces

D4. Refactor Complex to be Numeric. S32::Numeric: "Complex"
D5. Refactor the trig functions to fit in this scheme. S32::Numeric:
"Trigonometric functions"

D6. Add Numeric and Real specific tests to the spectests.
D7. Enhance our current numeric tests to better work in the new system.

Project Details:

D1 and D2 require implementing a the Real and Numeric roles, and possibly
modifying the Spec a bit in the process. Probably the biggest issue here is
working out to what extent Real should implement default versions of its

D3, D4, and D5 involve refactoring the existing methods for these classes to
fit into the new role-based scheme. Special attention will be given to
facilitating the addition of new numeric types which fill these roles.

D6 would include simple tests -- do the classes belong to their appropriate
roles? -- as well as more complex tests -- can users readily create their own
Numeric class?

D7 would reorganize the existing numeric tests to better take advantage of the
new system, as well as forking role-based versions of those tests.

Project Schedule:

This is envisioned as a two-month project. The first three weeks would be spent
establishing the basic framework and getting the Numeric methods in place for
Int, Rat, Num, and Complex. The second three weeks would be spent working on
the Real methods for those classes. The last two weeks would be set aside for

I am able to begin work on this project at any time.

Report Schedule:

Blog posts every other week on a new Perl 6 programming blog on Wordpress,
also to be submitted to Perl Planet Six.

Public Repository:

All code, documentation and other relevant files that relate to Rakudo will be
checked into the Rakudo repository. All contributions to the specification and
specification tests will be checked into the Pugs repository.

Grant Deliverables ownership/copyright and License Information:

All work on produced as a result of this grant will be licensed under the
Artistic License Version 2.0. I already have signed the relevant CLA for The
Perl Foundation.


After flirting briefly with Pugs back in its very early days, I started
regular experimentation with Perl 6 via Rakudo in late 2008. In mid-2009 I
started contributing, first to the spectests and then in August to Rakudo
itself. Since then I have been the third most active Rakudo committer,
including extensive work on Rat, Complex, and trig support.

I have an MS in mathematics and a BS with honors in mathematics and computer
science, both from the University of Michigan. I have twelve years' experience
as a professional C++ library developer.

Country of Residence:

United States


United States

Amount Requested:


Okay to publish proposal?:


Suggestions for Grant Manager:

Jonathan Worthington

March 04, 2010

YAPC::NA 2010 Request For Sponsorship

From the YAPC::NA 2010 website: "YAPC::NA 2010 is actively searching for sponsorship, if you or your company would interested in being a sponsor please take a look at our Executive Summary or Sponsorship Prospectus."