For the third year in a row, let's write some Perl 6 contest code!

The 2012 Perl 6 Coding Contest

Perl 6 has had a great year, with its two major implementations growing increasingly mature. Sometimes it's easy to forget all the progress that happens each month. Features and performance have improved all through the year. I think that will show in this year's entries.

So here's what's happening:

do five tasks, and you might win Amazon books worth €100!

Addendum: Thanks to an anonymous donor, we're proud to announce a second prize as well: Amazon books worth 100 USD! (Redeemable within a year of winning.)

The contest starts now, today on 2012-12-14. It ends five weeks later, on 2013-01-18. Registration is open for two weeks, starting now. Just send an email to cmasak@gmail.com — saying "sign me up!" or even sending your Amazon wishlist so I'll know which books to buy you if you win.

You might be curious about what you need to do to win. Here's an extract from the file rules.md :

Since "code quality" is a slightly subjective measure, let us provide a few hints of what we'll be looking for: * Correctness. * Readability. * Consistency. * Clarity of intent. * Algorithmic efficiency. * Idiomatic use of Perl 6. * Brevity. In short, what we're looking for is top-quality code. That's how you win.

Here are the five tasks. Write Perl 6 programs to...

Tell knights from knaves based on what they say. (more)

Generate rectangle haikus. (more)

Arrange wire crossings to rearrange wires. (more)

Simulate rain in a world of cubes. (more)

Distribute weights in bags evenly. (more)

I've chosen the problems so that they're easy to explain, but allow contestants quite a bit of freedom to play around with various solutions.

This time, the whole contest is running as a GitHub repository. Easier than hosting zip files.

Now sign up — you've nothing to lose, and books to win! Also, this is your chance to finally take a look at Perl 6. 哈哈

(Looking for previous years' tasks and solutions? Here they are: 2010 tasks and 2010 solutions. 2011 tasks and 2011 solutions.)