Toby Inkster reports in his blog that the book took a back seat to other duties this month. He is continuing to develop the basic ideas, most recently in the form of a talk that he will present at the London Perl Workshop. Toby has shared this <SPOILER_ALERT> material </SPOILER_ALERT>.


Dave Mitchell writes:

The main things I worked on this month were:

  • finished off making the op_private OP flags and data be auto-generated from a single consistent source.
  • I started to investigate how the allocation and growing of strings (in Perl_sv_grow()) interacts (sometimes badly) with COW and the underlying malloc() library implementation
  • reviewing, discussing, fixing up and applying Syber's method call optimisation work

3:52 [perl #122666] Bleadperl v5.21.1-120-g34dadc6 breaks SYOHEX/Text-Xslate-3.3.3.tar.gz
1:14 [perl #122791] Memory leak oddities with various versions of Perl
0:36 create t/re/speed.t
14:21 investigate sv_grow() algorithm
19:07 make op_private flag definitions be auto-generated
0:57 misc tidying up
24:19 process p5p mailbox
9:14 review "Speeding up perl's OOP" patch
2:20 sort out B.xs op_padix issue
1:53 sort out globals.c make dependencies

77:53 Total (HH::MM)

As of 2014/09/30: since the beginning of the grant:

50.3 weeks
712.0 total hours
14.2 average hours per week

There are 88 hours left on the grant

Grant Report: Inline::C(PP) - October 2014

No Comments

Ingy and David report on their Inline:C(PP) grant progress in their joint blog. Some exciting highlights:

  • All work being done publicly:
    • David and Ingy code in remote PairUp™ session (tmux)
    • All realtime communication in IRC (
    • Tmux to be termcasted soon (live terminal in a browser)
    • Fork 'em on GitHub
  • Figured out a decent Inline Module API strategy
    • Authors do 3 simple new things to ship Inline code to CPAN
    • No end-user dependency on Inline for these modules
    • End result is essentially same as hand written XS
  • Created specification document:
  • Released two new CPAN modules:
  • Created a new blog site to document the Inline Grant Project
    ("A new site using some of our other loved technologies: Cog, Coffee, make, Swim, Jemplate, gh-pages, BootStrap")

Looks pretty cool. Here is Acme::Math::XS in its totality:

use strict; use warnings;
package Acme::Math::XS;
our $VERSION = '0.0.2';

use Exporter 'import';
our @EXPORT = qw(

use Acme::Math::XS::Inline C => <<'...';
long add(long a, long b) {
return a + b;

long subtract(long a, long b) {
return a - b;


ACT - Voyager - logbook 2014-10-01

No Comments

As time moves on the Voyage gradually moves forward.

In the proposal I sent, I already knew that I would not be able to dedicate any time until the last week of September. So, what did happen until now:

The Apache & mod_perl nightmare

ACTually, let me take you back december 2013. After I visited the London Perl Workshop, I went to the French hackathon Patch -p1 in Paris to see if I could do some useful things on ACT. I wanted a good looking web-site for the Dutch Perl Workshop! The only thing I had at time was a jurassic Apple PowerBook G3 500Mhz FW. I still love that baby. During that specific hackathon my slow machine was not performing well and I had to go back home without having much achieved, technically.

Back home I bought a book that most would start screaming about "Practical mod_perl". In there is a recipe to get it all up and running... If only. As family we went to a resort in Belgium between Christmas and New-Year and I tried to be a nice family man. Most of the time I was trying to set-up my machine so it would run Apache 1.x with mod_perl. And it still didn't work out.

The best solution was actually the most simple one, a dead clean install of the original MacOS 10.4! Which includes a running Apache 1.x and mod_perl pre installed... Had I only known before.

Why this long story? For it is one of the many stories you will hear from anybody that wanted to install Act on their own system. It is a nightmare. Luckily there were some people that had succeeded before:

  • Detlev sent his notes on how tried to set up his development virtual machine for the NLPW and I never got the chance to work those out for one simple reason: I did not had a laptop robust enough to run virtualisation. But that has changed.
  • Alex Mundata had worked out a way to install a working setup inside a Vagrant box. I looked at it and tried it - but failed a few times, as there were some unclear things in his setup

The green pastures of 'Act-out-of-the-box'

So, I took all that info and started to work on a super easy way for any Act developer to start hacking:
  1. Download Vagrant
  2. Download the 'Act-out-of-the-box' vagrant image
  3. vagrant up
  4. Choose your install type
  5. Welcome to Act
So, what is happening there, what install types...?

As it seems there are different ways people like to work on Act. Some of them just want a test machine so they can play locally with the design and interaction. For them there will be a pre-setup environment that will give them only what they need. Others want to do some stuff in the core of Act, those will get another environment.

During that last install step, it does one other important thing, it does clone a repository from GitHub: the stable production version, the HOT Act Voyager version or a PSGI version.

The 'Act-out-of-the-box' comes pre-installed with:

  • Apache 1.2.42
  • mod_perl 1.31
  • postfix
  • PostgreSQL
  • sample databases
  • Act dependencies
This is going to save all Act developers, including myself a lot of work and time. I think this is a huge step forward to make Act hackable for anybody.

I'm about to finish the last step in the installation procedure, so that will work nicely as it is supposed to work, not like some idiot me has smashed it together.

Then... it gets time for me to get the databases a bit more fancy and give Act a nice shiny DBIx::Class interface.

Patch -p2 hackathon in Lyon

I'm looking forward to the end of november, when Patch -p2 will be held in Lyon. I hope a lot of fundamental things have changed before then so we can all work on some fresh hackable environment

Your Captain Theo van Hoesel

ACT - Voyager - logbook 2014-09-01

No Comments

Grant Manager's note: please excuse the delay in posting these progress reports. Future progress reports will be more in time. This is the progress report about August 2014.

As in the original proposal for the Grant, it was stated I would not start before the second half of september because of a project that is very tight on the deadline.

However that does not mean that nothing happens. On the contrary, not without reason at the last evening of YAPC::EU::2014 I briefly showed the official Startrek Voyager opening video: this project already has gotten into 'Warp Speed'.

I held a brief introduction LightningTalk at the first day, called 'the Long Journey' see my SlideShare upload

The next day there was a BoF with a dozen people showing up that had different kinds off interests:

  • people that want a complete rewrite
  • people that want a quick fix and new features on top of the current ACT
  • people that want to change the internals first
Doing a total rewrite, as usually, was being advised against, but has some challenging aspects. Making it possible to start hacking on the current version of ACT has the advantage that things can start immediately... although there has been proposed to make the current Apache1/ModPerl version of ACT run inside a PSGI environment. Haarg has previously made a PSGI port (3 years ago), which has not yet been merged back, due to deployment changes required for current live setup. SawyerX is working on a revised approach which may not need this. Once one of these solutions is merged in, it will be possible to hack on the current version at two different fronts: add features and hack the core in the meantime.

We are looking forward to see what Sawyer is doing for some kind of wizardry.

Thank you Todd Rinaldo for setting up a new ACT repository at GitHub and creating the teams and send out the invitations.

During Lunch with BooK I was very happy to hear how he sees how this ACT Voyager project will work in conjunction with the current ACT repository at GitHub and the servers.

BooK suggested that whenever the Voyager team does a pull request on the original BooK/ACT repository, it will be checked out at the ACT test server to see how the changes will effect in real life situations. From there, it will go to the real ACT server. This cycle should be done as quick and frequent as possible after the pull-request. This way, the effort people take to work on the new repository will show up in production soon and it will not slow down the project.

One thing that BooK suggested will certainly help in moving forward more quickly: some discipline for all those that want to hack on the old code! Once the DBIx::Class schema is functional and working, there is still code in the ACT::Core that needs to be updated. All developers that want to add or edit features in the old version that rely on modules in the core, should first fix all the methods in core before adding on top off it... and test, test test. Once that stage has passed and committed (and merged) hacking on the features itself can start. This way, we make developers more responsible and involved in the whole project.

Later this year, BooK will organise a hackathon in Lyon. Salve J. Nilsen has already scheduled the hackathon in Oslo in May next year.

I am very grateful for all the support I get from people more intelligent than I am and specialised in important technologies that ACT will be build on.

Theo van Hoesel

Dave Mitchell has requested an extension of $20,000 for his Maintaining the Perl 5 Core grant. This will allow him to dedicate another 400 hours to this work. During this grant he sent weekly reports to the p5p mailing list as well as providing monthly summary reports that have been published on this blog, the most recent of which are linked below:

Report for Month 11
Report for Month 10
Report for Month 9

Before we make a decision on this extension we would like to have a period of community consultation that will last for one week. Please leave feedback in the comments or if you prefer send email with your comments to karen at

If successful this extension will be funded from the Perl 5 Core Maintenance Fund.

I am pleased to announce that Tony Cook's Maintaining Perl 5 grant has been extended by another 400 hours.

I would like to thank everyone who responded to the call for comments and who provided feedback on this grant extension. I would also like to thank all those who continue to provide financial support to the Perl 5 Core Maintenance Fund.

About TPF

The Perl Foundation - supporting the Perl community since 2000. Find out more at

Recent Comments

  • Dave's work has been quite valuable, and continues to be read more
  • ether (Karen Etheridge): Dave's work has been great and I think we should read more
  • Smylers: Please grant this. What Dave is doing for Perl 5 is read more
  • mirod: +1, this is important work. And thanks Dave. read more
  • William N. Braswell, Jr.: Congrats ingy & davido! I put quite a bit of read more
  • Leon Timmermans: This sounds sensible. In fact I'd argue Inline isn't really read more
  • Karen Pauley: Hi Anju, details of the application process can be found read more
  • Olivier Mengué (DOLMEN): As this is about another markup language, I would see read more
  • Olivier Mengué (DOLMEN): One point of ::Tiny is that implementation must be tiny, read more
  • Anju: I want to take part in this program. I am read more

Find recent content on the main index or look in the archives to find all content.

OpenID accepted here Learn more about OpenID
Powered by Movable Type 4.38