Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Falcon is a new compiler for Flex that is under development. It will eventually replace the legacy compiler that has been part of the Flex SDK.

Current Status

Adobe has sent Falcon's donation documents to Apache. After Apache notifies Adobe that they have been recorded, the code will be added to the repositorydonated the source code to the Falcon compiler as revision 1383121 on September 10, 2012. It currently lives at incubator/flex/falcon/trunk. A development branch at incubator/flex/falcon/branches/develop will follow after the build scripts have been tested and debugged.

The ActionScript side of Falcon is of shipping quality and is the basis for Flash Builder 4.7. The rest of Falcon (MXML, CSS, FXG, PROPERTIES) is pre-alpha quality and not ready for production use. Nevertheless, Falcon already supports enough of MXML to compile a correctly-running version of Checkinapp, the test app that is part of the SDK. (Exception: Checkinapp uses one Repeater tag, which is not yet implemented.) The main areas where Falcon needs more work are databinding, states, MXML-specific error reporting, and ASDoc generation.

After donation, Gordon Smith of Adobe, who has worked on Falcon from the beginning of the Falcon project, is on loan to Apache Flex for one day a week to improve Falcon's MXML support, with the goal of making it a suitable replacement for the legacy compiler. He will provide advice to Apache developers contributing to Falcon. Alex Harui of Adobe has become familiar with MXML code generation in Falcon and can offer advice in that area.

...

Source Code

The Falcon trunk will soon be is now available in Apache's Subversion repository at https://svn.apache.org/repos/asf/incubator/flex/falcon/trunk. You can download it with any Subversion client.

...

Information about Ant targets will be available by the time of donationsoon.

All the compiled Java classes that comprise Falcon are packaged as falcon.jar, which is generated at generated/dist/sdk/lib. Other JAR files such as falcon-mxmlc.jar and falcon-compc.jar are codeless launcher JARs which serve only to run a particular entry point within Falcon. Launchers such as the shell script mxmlc or the batch file mxmlc.bat simply run these launch JARs from the command line.

...