September 2015 Archives

Jonathan Worthington has requested an extension of $10,000 for his Perl 6 Release Goals grant. The funds for this extension would come from the Perl 6 Core Development Fund. The requested extension would allow Jonathan to devote another 250 hours to the project.

Jonathan has provided a detailed report for the work done so far, which also provides details of the work he plans to carry out if the extension is successful. He also provided regular updates on his blog.

Before we make a decision on this extension we would like to have a period of community consultation that will last for seven days. Please leave feedback in the comments or, if you prefer, email your comments to karen at perlfoundation.org.

Jonathan Worthington writes:

In April 2015 I started working on a grant from The Perl Foundation's Perl 6 Core Development Fund. The grant was provided to enable me to dedicate much more time to the Perl 6 project than would otherwise have been possible, and it has indeed enabled this. My work has been, and continues to be, focused on enabling the release of the Perl 6 language along with a compliant implementation in late 2015.

In this report I will both provide an update of what has been achieved under the grant so far, and indicate what I intend to focus on from here. This also offers a chance for both the community and the Perl Foundation board to assert that they do indeed wish for my work under the Perl 6 Core Development Fund to continue.

Tony Cook has requested an extension of $20,000 for his Maintaining Perl 5 grant. This grant has been running successfully since July 2013. The requested extension would allow Tony to devote another 400 hours to the project. The funds for this extension would come from the Perl 5 Core Maintenance Fund.

As well as posting reports on the p5p mailing list Tony provides detailed monthly reports, the most recent of which can be found in the following blog posts:

August 2015
July 2015
June 2015

Before we make a decision on this extension we would like to have a period of community consultation that will last for seven days. Please leave feedback in the comments or, if you prefer, email your comments to karen at perlfoundation.org.

Tony Cook writes:

Approximately 57 tickets were reviewed or worked on, and 12 patches were applied.

HoursActivity
0.83#120826 re-work documentation patch
#120826 re-test, apply to blead, close
4.99#120903 first pass over documentation update
#120903 more documentation, testing, comment with patch
#120903 local edits, comment
0.53#121200 check it's the same issue, merge tickets, comment
0.08#123543 review and resolve
0.67#123658 comment
0.17#123867 comment

The Grants Committee has received four grant proposals for the September round. With the one which was carried over from the July round, we have five proposals to choose from. Before the Committee members vote, we would like to solicit feedback from the Perl community on them.

Review the proposals below and please comment there. The Committee members will start the voting process on September 28th and the conclusion will be announced by October 2nd.

If your comment does not appear in 24 hours, it is likely that our spam filter did something bad. Contact me at tpf-grants-secretary at perl-foundation.org.

Proposals

ProposerRequested AmountLink to the Details
Will BraswellUSD 800RPerl User Documentation
Will BraswellUSD 1,200RPerl Alioth Benchmarks, Part 2
Will BraswellUSD 1,200RPerl Operators
Paul BennettUSD 1,200RPerl Medium-Magic Grammar
Jason McIntoshUSD 2,000Document and release Plerd, an open-source lightweight blogging engine (*)

(*) This proposal was carried over from the July round and it links to the proposal posted in July.

The grant program wouldn't have been possible without our Sponsors. Thank you so much.

We have received the following grant application "RPerl Medium-Magic Grammar". Please leave feedback in the comments field by September 27th, 2015. If your comment does not appear in 24 hours, contact me at tpf-grants-secretary at perl-foundation.org. As we have four proposals on RPerl this time, please use RPerl User Documentation proposal if your comment is about RPerl in general and not specific to this proposal.


RPerl Medium-Magic Grammar

  • Name:

    Paul Bennett

  • Amount Requested:

    USD 1,200

Synopsis

RPerl currently supports a low-magic subset of the Perl 5 programming language.

I request funds to implement an updated RPerl grammar for a medium-magic subset of Perl 5, which will have significantly fewer restrictions than the current low-magic RPerl grammar.

Benefits to the Perl Community

A medium-magic grammar will allow many normal Perl programs to benefit from the speed of RPerl, and is the next step toward a high-magic version of RPerl in the future, which will eventually be an optimized, fully-compatible drop-in replacement for the current Perl 5 core.

Deliverables

1. GrammarMedium.eyp EBNF grammar file 2. A description of the medium-magic RPerl grammar 3. New unit test cases using the same mechanism as existing tests

We have received the following grant application "RPerl Operators". Please leave feedback in the comments field by September 27th, 2015. If your comment does not appear in 24 hours, contact me at tpf-grants-secretary at perl-foundation.org. As we have four proposals on RPerl this time, please use RPerl User Documentation proposal if your comment is about RPerl in general and not specific to this proposal.


RPerl Operators

  • Name:

    Will Braswell

  • Amount Requested:

    USD 1,200

Synopsis

RPerl v1.1 has been released with a working N-body benchmark, as promised. Thanks to RPerl, we are now able to run N-body at the speed of C++, which was claimed by many in the Perl community to be impossible. This grant proposal is to create 20 additional operators in RPerl.

Benefits to the Perl Community

RPerl v1.1 is lacking the full power of accessibility to all Perl 5 operators.

The Perl community will benefit by increasing the usefulness and general- purpose applicability of the new RPerl optimizing compiler.

Deliverables

Deliverables for this grant proposal are:

  1. Implementations of 16 Perl operators in high-speed mode, already chosen
  2. Implementations of 4 Perl operators in high-speed mode, as chosen by TPF
  3. Documentation and usage examples of all 20 operators

We have received the following grant application "RPerl Alioth Benchmarks, Part 2". Please leave feedback in the comments field by September 27th, 2015. If your comment does not appear in 24 hours, contact me at tpf-grants-secretary at perl-foundation.org. As we have four proposals on RPerl this time, please use RPerl User Documentation proposal if your comment is about RPerl in general and not specific to this proposal.


RPerl Alioth Benchmarks, Part 2

  • Name:

    Will Braswell

  • Amount Requested:

    USD 1,200

Synopsis

RPerl v1.1 has been released with a working N-body benchmark, as promised. Thanks to RPerl, we are now able to run N-body at the speed of C++, which was claimed by many in the Perl community to be impossible. This grant proposal is to create 2 additional Alioth benchmark applications.

Benefits to the Perl Community

Alioth is the premier language benchmarking website, and Perl is ranked at-or- near the bottom of several different benchmark applications.

http://benchmarksgame.alioth.debian.org/u32/performance.php?test=nbody

Many members of the general public will be turned away from Perl adoption by the terrible ranking of Perl among other programming languages. The N-body benchmark is 1 step forward, now we need to take 2 more.

The Perl community will benefit by a dramatically more positive public language ranking, and (hopefully) an increase in new Perl users as a result.

Deliverables

Deliverables for this grant proposal are:

  1. Mandelbrot fractal benchmark application
  2. Any other Alioth benchmark application except regex-dna, as chosen by TPF

We have received the following grant application "RPerl User Documentation". Please leave feedback in the comments field by September 27th, 2015. If your comment does not appear in 24 hours, contact me at tpf-grants-secretary at perl-foundation.org. As we have four proposals on RPerl this time, please use this entry if your comment is about RPerl in general and not specific to each RPerl proposal.


RPerl User Documentation

  • Name:

    Will Braswell

  • Amount Requested:

    USD 800

Synopsis

RPerl v1.1 has been released with a working N-body benchmark, as promised. Thanks to RPerl, we are now able to run N-body at the speed of C++, which was claimed by many in the Perl community to be impossible. This grant proposal is to create an RPerl user tutorial.

Benefits to the Perl Community

The number one request and obvious need at this time is quality RPerl user documentation, to help new RPerl users learn how to write fast software. I am bombarded with a constant, daily stream of requests for this to be done.

Deliverables

Deliverables for this grant proposal are:

  1. A description of the RPerl grammar and what constitutes valid RPerl syntax
  2. Documented RPerl solutions to problems in chapters 1 - 6 of Learning Perl
  3. Web-based presentation of deliverables 1 and 2 on the rperl.org website

Community Heroes: Liz and Wendy

4 Comments

Raising Hopes, Raising Joy and Raising Money

When you travel to Perl conferences, or talk on Perl channels, you will at some point hear about (or if you are fortunate meet in person) Liz and Wendy. Many of you reading this will already be familiar with the both of them and perhaps, like me, you will already have a deep respect for them as well.

Liz and Wendy have been cornerstones of the Netherlands Perl community and the European community for more years than any of us care to count (though no doubt Wendy could tell us). They were the owners of a succesful Perl consultancy that sponsored a number of events for many years and since ending that company they have branched into new directions which has seen them further associating with, and promoting, Perl.

I doubt that anyone realises the vast number of things they do to help the community, and I can gurantee that right now they are both feeling abashed that I am writing about them. But without them community projects such as Send-A-Newbie, PerlQA, YEF, YAPCs, EPO, CPAN Testers, numerous Workshops, Perl track at FOSDEM etc.; would either be struggling or not exist at all.

Whenever you meet Liz and Wendy at a conference you will find Liz working hard with the Perl6 developers, speaking on Perl6 and running hackathons.

Liz hacking on material

But you will find Wendy everywhere else. Either manning a stall selling merchandise, books and giving away promotional material for Perl; helping organisers in any way she can; bringing the largest collection of Perl books to events; generally socialising and being one of the highest points of the Hallway Track.

wendy manning a stall

During the Summer conference season Liz and Wendy drove around Europe with a car packed full of camels, books and merchandise, promoting and supporting the community. While doing so they sold books for many Perl authors and patches to support Perl5 and Perl6 development.

This is no small effort, they were not paid for this, this was simply out of the dedication they have to our community. They raised €2,000 (two thousand Euros) for Perl5 and Perl6 from the sale of patches and auctioning of merchandise. That's fifteen Perl6 patches, fifteen Perl5 patches, t-shirts and various small items. I should also note that many in the Perl community gave 'wild' donations to help the Perl Foundation. Gordon Banner lost out on a bid to buy a t-shirt but still donated his losing bid (thanks Gordon).

All of this is valuable to both the Perl Foundation, the local conferences, and all of us in the community.

But it doesn't end there. They are probably going to despair of me for telling you this but the total donation was matched by Liz and Wendy. The only comment they made on delivering this to the TPF was this:

"it is mostly grassroots driven. People had fun buying the patches and the shirt, and several people expressed their wish we would do this more often, and that it was a bit sad that we did not have more patches. It was fun."

They worked hard, they gave their time, their experience and their love to the community. Their wish is that they could do it more as it 'was fun' for the community. They praise the grassroots, the people who came to the events, who took the time to talk, who took a sticker or bought a book, and if they had no money to buy a patch donated what they could.

Liz and Wendy do these things because they cherish and honour their community. I am proud that I cherish them just as much. They are truly 'community heroes'.

Dave Mitchell writes:

I spent August mainly working on two things.

First, I continued working on re-jigging how scope entry and exit works (putting more in the context struct and avoiding ENTER, SAVETMPS etc).

I had already heavily reworked how subs are called, making a bare sub call:

sub f {} f();

use about 1/3 less instructions, branches etc.

I've now made the more general loop and pp_enter context stuff use the new regime too (but it's not yet finished and still fails some tests), and preliminary benchmarking shows that an empty for loop with a single iteration is about 1/3 faster too (i.e. for my $x ($y) {}), and with 20 iterations is about 10% faster (i.e. for my $x (1..20) {}). Also, an empty block, i.e. { 1; }, which in perl is still technically a loop, is about 50% faster.

Secondly, I finished off the work of making the 'common-variable' handling code of pp_aassign() (OPpASSIGN_COMMON flag set) more efficient and safe; i.e. the classic ($a,$b) = ($b,$a) issue. It now uses 3 compile-time flags rather rather than, so can more intelligently only copy or mortalise the args that really need it. This is helped by a new run time mark-and sweep algorithm that detects which args are truly shared on both sides of the assign.

This work has now been merged back into blead.

Summary

22:57 #124156: death during unwinding causes crash
0:34 RT #125798 Regex bug with optional capturing group (<...>)? and backreference
0:30 [perl #125840] *x = $x premature free
2:25 [perl #125907] OPpASSIGN_COMMON work broke net-snmp
9:02 process p5p mailbox
40:31 re-implement OPpASSIGN_COMMON

75:59 Total (HH::MM)

As of 2015/08/31: since the beginning of the grant:

98.1 weeks
1419.0 total hours
14.5 average hours per week

There are 181 hours left on the grant.

I am pleased to announce that the recent grant application from the Swiss Perl Workshop team has been successful.

I would like to thank everyone who took the time to comment on this grant application. If you would like to help fund Perl 6 development please consider donating to our new Perl 6 Core Development Fund.

The Grants Committee is accepting grant proposals all the time. We evaluate them every two months and another evaluation period has come.

If you have an idea for doing some Perl work that will benefit the Perl community, consider sending a grant application. The application deadline for this round is 23:59 September 18th UTC. We will publish the received applications, get community feedback and conclude acceptance by October 2nd.

The format will be the same as the previous rounds in 2014-2015.

To apply, please read How to Write a Proposal. Rules of Operation will also help you understand how the grant process works. We also got some grant ideas from the community.

We will confirm the receipt of application within 24 hours.

If you have further questions, please comment here or contact me at tpf-grants-secretary at perl-foundation.org.

Dave Mitchell writes:

I spent July mainly working on two things.

First, I continued to work on the whole issue of how subroutines are invoked and returned from, and especially how the various perl stacks are manipulated during this time, i.e. all the PUSHBLOCK/PUSHSUB stuff. I also started extending the work to other context types, such as loops.

I have mainly concentrated on removing unnecessary fields from the CXt_SUB context struct, and eliminating the ENTER / SAVE* .... / LEAVE that is normally wrapped around function calls, loops etc, instead storing the old save stack and tmps stack floors and old PL_comppad directly in new fields in the context struct. I've also streamlined the @_ processing and tweaked pp_entersub a lot.

About TPF

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

About this Archive

This page is an archive of entries from September 2015 listed from newest to oldest.

August 2015 is the previous archive.

October 2015 is the next archive.

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

Pages

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