in General Coding

Discovering OpenLaszlo

My friend Victor recently sent me a link to a great (not-so) new RIA programming language – OpenLaszlo. (They really should think about registering and having that redirect, but anyway…) Here is the in-a-nutshell description from their website:

OpenLaszlo programs are written in XML and JavaScript and transparently compiled to Flash and, with OpenLaszlo 4, DHTML. The OpenLaszlo APIs provide animation, layout, data binding, server communication, and declarative UI. An OpenLaszlo application can be as short as a single source file, or factored into multiple files that define reusable classes and libraries.

In other words, it allows you to focus almost purely on content and presentation, making for a Ruby-on-Rails-level of programming efficiency. To get a sense of of how efficient it can be, check out their demos page and then open up, for example, the calendar app. This is a full-fledged calendar interface, that can be served either as Flash or DHTML. And then take a look at the source code. Sure there are a lot of includes, calling a bunch of library resources, but the core code for this app is only about 500 lines. Considering that calendaring interfaces are in no way trivial, and that this calendar interface in no way is some bare-bones clunker (in fact, it’s quite elegant), this is pretty amazing.

OpenLaszlo has apparently been around for awhile, so I’m surprised I’ve never heard of it, or seen more stuff built with it. (Though because it’s easily mistaken for being built with Flex, which Pandora looks it was built with when it in fact was built with OpenLaszlo, I may have seen more of it than I’m aware.) I can also imagine that it has amazing potential as a prototyping environment.