Thursday, April 2, 2009

Introducing Vala's Friend, Genie

Python logo, 1990s-2005Image via Wikipedia
Last summer, I wrote about Vala, Gnome's C#-alike language that pre-compiles into straight C, with bindings to just about every good library you'd need to write Gnome apps. While Mono offers rapid application development, it carries the huge burden of the Mono runtime with it. A simple 125KB Mono app needs many MBs of runtime libraries. This is a constant discussion point on the Ubuntu front because Mono takes up space on the live CD for Tomboy and F-Spot that many people would rather see used for more features. Vala apps, however, don't need a runtime since they convert to C and then compile to standard binaries. You get almost all the benefits of Mono (sans cross-platform), but you don't get the pain. Vala also silences the Mono critics. Yay!

That's all great for the C# and Java programmers, but what about Python lovers who don't want their apps to need a runtime and the slowness of an interpreted language? Well, I recently discovered Genie, a language modeled on Python which uses the same valac compiler to create binaries, making all the same features available in Genie as are in Vala. Collaborators can even mix and match Vala and Genie in the same project since valac can handle both.

Genie still needs some serious love, though, especially in the documentation arena, which is almost non-existent outside of a few tutorials.

Python programmers, get over there and help out.


Post a Comment

Other I' Been to Ubuntu Stories