January 2010 Archives

Pretty Perl

Contrary to popular belief and utter media ignorance, Perl doesn't just offer several powerful web frameworks (I'm totally in love with Sebastian Riedel's Mojo), it also has extremely powerful and underestimated GUI and graphic's bindings. Recently I toyed a little with the java-based "Processing" and while I was cursing several Java classes I was somehow too stupid to get up and running, I realized that I could have all the shiny and pretty shapes and animations in Perl the easy way. (What's missing is the overall well-rounded integration of Pretty Perl, sugarcoated with a nice GUI.)

Here's a little round-up of Perl all being pretty:

A reminder to everyone who forgot: The extremely powerful and flexible Image Magick still comes with the Perl API Perl Magick . Use it. If you need inspiration what to do with all the bitmap goodness, check out Mac-based "Pixelmator" which is a showcase of adding a GUI to Image Magick and make it an extremely impressive bitmap editor. (Why didn't the Open Source world do it with Gtk?)

Which leads us to the most impressive work the GtkPerl team has done over the years. Gtk2Perl is a must-install.

Another family member of GtkPerl is Cairo, the SVG library which also can produce PDF output and draw pretty things. ;)

Everyone wanting a basic browser written in Perl to get a look on Webkit-based rendering, can install Gtk2::WebKit which is a fully fledged Webkit view. If you have Flash installed correctly, it even does Flash out of the box. (I put a little example in my pretty Perl github)


If you're more of a KDE-kind-of-person: Yes, there is someone working on a new QtPerl version to support Qt/KDE 4.x.

Another really impressive library is "Clutter". Based on OpenGL and Cairo and that way bringing together the best of all worlds, Clutter can act as a canvas to be used in canvas-lacking Gtk. The Clutter module awaits your download.

While we're at it: Yes, there are Perl bindings to OpenGL - a project named POGL. If you're interested in the usal speed competitions between programming languages, read the POGL benchmark carefully. POGL is also available on CPAN

Another interesting library is libaosd which essentially allows no-fuss drawing directly on the screen. Of course, there's a X11::Aosd module on CPAN.


If you need the average run-of-the-mill canvas to use with Gtk, today's choice  (besides Clutter) is the Goo::Canvas module on CPAN.

Last, but not least - if you're planning to re-write OLPC's "Sugar" desktop in Perl, you'll have to get the X11 modules on CPAN There's the traditional X11::Protocol and I just found a new X11::Xlib module

If you are more into classics: Yes, TkPerl still exists.

And I totally forgot the Wx bindings for Perl which many people prefer over native widget sets.

About Su-Shee

user-pic I ♥ Perl.