Damian Conway on Aikido, Star Trek, and Perl

And Danish mind control, Greek mythology, periodic tables, the garbage strike, ...

Damien Conway is one of the best presenters in the business. His past talks have been described as “engaging”, “mind-blowing”, and “brain bending”. Joey DeVilla adds to the hype :

There’s nothing quite like a Damian Conway presentation, which is equal parts pop culture, deep science, software engineering and Monty Python’s Flying Circus

His previous talk in Toronto featured this mouthful of a title:

Temporally Quaquaversal Virtual Nanomachine Programming in Multiple Topologically Connected Quantum-Relativistic Parallel Timespaces… Made Easy

So what could possibly dampen my enthusiasm when I found out he was giving another talk in Toronto? Simple: his life’s work is devoted to Perl, a programming language that some have described as “bloody witchcraft” and “write-only”.

But with the first slide, he cheekily addressed this image problem:

“Content advisory: This presentation contains a substantial amount of explicit Perl.”

Damien Conway at UofT

What’s going on in the photo? Did he forget to also warn us about violence? Not quite — it’s him giving a demonstration of Aikido on a certain local accordion player.

(Damian says these skills come in handy in bars — coincidentally, a strange setting considering he’s “the only Australian who doesn’t drink” and the “designated driver for an entire continent.”)

In any case, Damian’s dragging of Joey across the room was actually a lesson about Perl. Aikido uses the “motion of the attacker and redirects the force of the attack rather than opposing it head-on.” Similarly, Perl is all about finding the easiest way to get your job done. Something all geeks are on board with right?

Another thing we all love: duality. Lego vs Mechano, Star Trek vs Star Wars, and more specifically, which was the more annoying golden robot. It harks back to a more ancient duality: chaos and cosmos, deified in the gods of Ares and Apollo. As geeks, our sympathies lie more on the Apollo side of the spectrum. We have a natural tendency to look for patterns in data. For example, nerds have created periodic tables to describe just about everything: vulgarity, visualization methods themselves (bonus: the recursion in the chart), anti-science attitudes, or Perl 6 operators.

With Perl — and open source in general — our obsession with elegance and order has an extra dimension: we chaotically bring order out of chaos.

So what does all this have to do with Perl? Regular Expressions — something that even the most ardent Perl-hater would admit the language does a kickass job on. For the next two (!) hours, Damian explained the ins and outs of a new regex library that he had coded and how he had made it compatible with the current version of Perl.

The grand finale: a programmatic version of Abbot and Costello “Who’s on First” skit:

Damien Conway at UofT

It might not look glamourous but that’s the new Perl regular expression engine talking back and forth with itself. Mind-blowing.

Addendum

As we all know, no discussion about computer languages is complete without a few gratuitous jabs at the other languages:

Damien Conway at UofT

(A reference to the notorious porn presentation at the Golden Gate Ruby Conference)

And now a word about Perl 6

Perl 6 seems to be quite an improvement over the current version but it’s been in the works for almost a decade (could it be the official scripting language of — the most famous of vapourware — Duke Nukem Forever?)

So for those yearning for a firm date, Damian might have hinted that there might be an announcement that might be made next week about a specific release date that might happen to be in Spring 2010.


Enjoyed this post? You should follow me on twitter or subscribe to the site's RSS feed

Posted on Tuesday, July 28, 2009 at 11:42 am by Andrew Louis in writing

 

2 Comments

 
chromatic on July 28, 2009

Rakudo — Perl 6 on Parrot — just had its 19th monthly stable release last week. Why the DNF comparison?

 
 
Alexandr Ciornii on July 28, 2009

Perl 6 (a complete rewrite) is developed less than Python 3 was, so why comparing it to Duke Nukem?

 

Leave a comment

Get one of those fancy icons next to your name

Please think of the children