OpenLaszlo 4

What is OpenLaszlo 4?

OpenLaszlo 4.0 provides a single application environment that supports multiple deployment runtimes. OpenLaszlo 3.x supports Flash 7 and 8 and 9 now; OpenLaszlo 4 extends that reach to include DHTML. With the necessary infrastructure in place, we anticipate further runtimes will be developed by the OpenLaszlo community as well at by the Platform Team at Laszlo Systems. Sun Microsystems's "Orbit" project will provide compilation to the Java 2 ME enviroment, and a future release of OpenLaszlo will provide optimizations for Flash 9.

The OpenLaszlo 4 project, (formerly code named "Legals") began at the start of 2006. The official release was announced on March 20, 2007. Developers interested in helping to improve the quality of OpenLaszlo 4 are invited to contact us. Developers can get a head start on porting their applications by moving to OL4. However, some features of 3.x have not yet migrated to OL4, so not all applications can be ported. Please see the Release Notes for details. We expect the next relase, OL4.0.1, to be fully-featured.

See OpenLaszlo 4FAQ for commonly asked questions and answers.

The Architecture

With OpenLaszlo 4, the OpenLaszlo architecture has been remodularized into a true multi-runtime platform. OpenLaszlo uses standard ECMAScript Release 3 with some ECMAScript Release 4 extensions as its scripting language. The compiler translates this script to an intermediate language that is then processed by multiple back-ends to translate into an appropriate format for the destination runtime (e.g., SWF byte-codes, or compressed Javascript 1.4).

The OpenLaszlo runtime library has been refactored into two parts: multiple kernels containing runtime-specific code, and a cross-runtime library.The cross-runtime (portable) part of the library is written in 'extended ECMA 3' (i.e., ECMA 3 with the extensions we added from ECMA 4). The kernels are written in the native dialect of the destination runtime (e.g., ActionScript or Javascript), which really turns out to be ECMA 3 plus the destination runtime API.

The core OpenLaszlo runtime library (also called the core LFC, for "Laszlo Foundation Class") delivers a common baseline of functionality across all supported runtimes. This gives developers a rich environment in which to build full-featured web applications. In addition, OpenLaszlo 4 includes runtime-specific extensions so that the particular benefits of targeting a runtime are not lost to OpenLaszlo application developers. For example, extensions allow access to Flash's streaming media capabilities.

The Code

You can download the current release,OpenLaszlo 4.0, from the OpenLaszlo Download page. Nightly builds of Legals are also available there.

The OpenLaszlo 4 source code is available through subversion (direct link and websvn).

You can find information about building OpenLaszlo 4 from Subversion here:

Project Plans

The OpenLaszlo 4 project plan page is on the OpenLaszlo wiki (under the code name Legals). The project plan provides a starting point for all relevant wiki documents about the OpenLaszlo 4 project, such as build instructions, position papers, developer notes and tools, and project goals. You can find it here:

The bug database and task plans are available in JIRA here:

How to Get Involved

Join us in designing, developing, and implementing a multiple runtime deployment platform. Become a contributor today. There are a number of ways you can get involved.