Serializing Code

Sometimes you want to get an existing sub or a closure and have it stored on disk or in the database, and execute it at some later stage. This talk discusses why you might want to do that, and how you might proceed doing it. The solution involves using one of the more underappreciated CPAN modules out there.

Go to presentation.

Fetch a tarball with the complete presentation.

Last presented: NPW2008, May 25th 2008, Stockholm, Sweden

DBIx-Perlish - Bringing perlish DB handling to the unwashed masses

The DBIx::Perlish module provides the ability to work with databases supported by the DBI module using Perl's own syntax for four most common operations: SELECT, UPDATE, DELETE, and INSERT.

By using DBIx::Perlish, you can write most of your database queries using a domain-specific language with Perl syntax. Since a Perl programmer knows Perl by definition, and might not know SQL to the same degree, this approach generally leads to a more comprehensible and maintainable code.

Go to presentation.

Fetch a tarball with the complete presentation.

Older version from NPW2007, April 29th 2007, Copenhagen, Denmark

Go to presentation.

Fetch a tarball with the complete presentation.

Last presented: YAPC::EU, August 28th 2007, Vienna, Austria

Object-Oriented Perl

This intermediate-level talk is aimed at people who already know Perl but are not very familiar with its OO model. It discusses at length the standard language constructs provided by Perl that facilitate object-oriented programming, its advantages and deficiencies. The methods are described to work around some of the limitations of the object model. Some more advanced topics include discussing multiple inheritance, building automatic properties accessors and creating singleton classes. Finally, non-idiomatic ways of doing OO in Perl are described, in partilular objects as closures with state, inside-out objects, and objects with dynamic methods via the Class::Prototyped module.

Go to presentation.

Fetch a tarball with the complete presentation.

First presented: AAUUG Meeting, February 12th 2007, Aarhus, Denmark
Last presented: NPW2007, April 28th 2007, Copenhagen, Denmark

Perl6, Parrot, and Pugs: bird's eye view

Perl6 is an ongoing effort by the Perl community to design a dynamic programming language following the principles established by Perl5, but substantially better. Parrot is the virtual machine on which Perl6 (and other languages) will run. Pugs is the initial implementation of Perl6. This talk aims to describe, in broad strokes, the design, the philosophy, and the features of all three.

Go to presentation.

Fetch a tarball with the complete presentation.

Last presented: AAUUG Meeting, January 18th 2006, Aarhus, Denmark