Basil – Scripting Flash from Smalltalk
Adobe Flash File Format (SWF) is a vector graphics format designed for publication on the web. At the moment it is the most popular file format to display animated vector graphics, far exceeding SVG which has not yet prevailed. To view an SWF file the user needs to install the Adobe Flash Player which is also available as a browser plugin for all major platforms in several languages. According to a census of Adobe, 99% of web users have a Flash Player installed.
SWF has a built-in script language called ActionScript which allows it to react to user events. ActionScript is a JavaScript-style script language with an object model, data types and functions. Thanks to ActionScript, SWF can be used to create interactive graphics or even rich internet applications. But SWF provides more. It has an advanced compression strategy that allows us to create files at a low file size. SWF may also embed bitmap data, joining both the strengths of vector and raster graphics. Even sounds and videos in different formats can be included in SWF.
With Basil we introduce a flash output framework for Smalltalk. Contrary to the common way of creating SWF files, Basil does not require us to own a proprietary development environment, e.g. the Flash Creative Suite. Instead, Basil lets us script SWF files directly from Smalltalk, allowing us to create an interactive graphics export with any data.
We chose Smalltalk as programming language because there are a number of visualization engines available which needed a strong graphics export. As an example, we used Basil to create a sophisticated graphics export from Mondrian [3], a scriptable visualization engine written in Smalltalk.

Leave a Reply
You must be logged in to post a comment.