VASGen: Free ActionScript3 Code Generation from Violet UML

Latest Release 0.2.1 (March 16, 2008)

VioletUML is a simple, lightweight, and free (GPL) tool for generating UML diagrams. The VASGen build described here adds the ability to export from a UML Class Diagram to a set of ActionScript3 code files. For ActionScript3 language manipulation, I integrate Metaas, a project which provides an API for generating and parsing AS3. Metaas in turn relies on ANTLR, a tool for building lexers, parsers, and automated processing in general, for grammars.

My purpose in building this small integration project was
  1. to make it easier to play with different object models, try them out a little, and throw them away as necessary, without the labor of hand-generating code files and
     
  2. support practical process research around applying static analysis tools and very-lightweight-CASE tools to agile development with dynamic languages
 This blog post talks more about the idea.

Go straight to code/download!

Release Notes 0.2.1 (March 16, 2008)
Release Notes 0.2 (December 3, 2007) Release Notes (Stuff That's Fixed) in 0.1.5 (July 5, 2007)
Here's What You Can Do In Original (0.1) Release (Stuff That Works) June 25, 2007 v 0.1 Release Notes / Known Issues / Stuff that Doesn't Work (0.1)

Regarding the metaas issues, I spent a little time building the ANTLR grammar and the metaas library, hoping I could find an easy fix. Due to either my own inexperience or possibly not using the proper versions of the sources, I did get a successful build, but I was getting some odd parse errors when using it. I figured better to get the basic VASGen functionality out the door than spend a lot of time learning ANTLR right now. Update: David Holroyd, who writes metaas, fixed these issues straightaway. And I figured out what I was doing wrong in the build (mixing versions of ANTLR bits = BAD. Duh.)

Download

Latest release: vasgen-0.2.1

This is an executable jar file, and includes the original Violet metadata for Eclipse plug-in and JNLP functionality.

Older binaries:
vasgen-0.2
vasgen-0.1.5
vasgen-0.1

Source!

Violet UML is licensed under the GPL. This archive includes the full source for this altered version of Violet UML.

Older source:
vasgen-0.2-src
vasgen-0.1.5-src
vasgen-0.1

Dependencies include metaas and ANTLR.