I posted a while ago that I was working on the next-generation Flash/Flex compiler at Adobe. After taking some time off, traveled a lot and moving half-way across the globe from San Francisco, I’ve started working again. And then I remembered I had a blog!
Perhaps the most exciting piece to report is that Code Model: the core language intelligence engine used in Flash Builder, Flash Catalyst and Flash Pro (I should blog about that, it’s pretty amazing) will be the basis for the new compiler. This is something I’ve been advocating for quite some time and it’s finally happening. And when I say advocating, I really mean being constantly talking about it until people finally gave in…
When you think about it, it makes perfect sense:
- Code Model is fast (well, faster than asc/mxmlc…still not as fast as javac/jdt) and memory efficient
- Code Model was designed to be hosted inside of tools (Builder, Catalyst and now Pro)
- Code Model is a full compiler front-end: lexing, parsing, syntax checking, semantic analysis, type resolution for ActionScript and MXML
- Code Model’s code is clean, and interface heavy
At this point in tooling development, it makes very little sense to have a compiler that can’t be integrated seamlessly into other tools. And it makes even less sense to write two competing libraries: one for compiling and one for language intelligence features.
The potential here is huge: smaller SWFs, faster compile times, better and more accurate tooling features…the list goes on and on.
So the future is bright, and I’ll be able to talk about more and more as the project picks up speed.


Seems like it will make IDEs more responsive with smaller memory foorprint. Good but probably not in my “most want” list
I hope more for run time performance improvements then compile time improvements. They meter more.
It all ties together. With a better compiler, the SWF that comes out at the end could be smaller and better optimized before it gets to the Player. Even a JIT can use a helping hand
[...] This post was mentioned on Twitter by Ultra Red, karannnnnnnnnnn3. karannnnnnnnnnn3 said: Code Model is going places: I posted a while ago that I was working on the next-generation Flash/Flex compiler at … http://bit.ly/d2Cmdp [...]
Sounds like some exciting advances. One of the things I have found as I work with more and more complex solutions is that asc is actually a pretty slow compiler, and mxmlc is quite the memory hog. And Flex apps can certainly benefit from smaller swfs, even incremental reductions make a difference.
Thanks Dave, for pushing to make the compiler better. I am certain it will improve the platform tremendously in ways people don’t realize.
This is awesome, I remember Jesse Freeman requesting that the flex framework become parts of the player…
“Native Flex Classes”
http://insideria.com/2010/04/flash-next—part-2.html
On an other note:
who should I ask this:
http://forums.adobe.com/thread/712160?tstart=0
I have tried to find and answer for over a week now…
Keep up the good work
Cool, I must admit I was totally unaware of Code Model, or the extensibility features of Flex Builder, thanks for the headsup. BTW the link to Code Model http://www.adobe.com/devnet/flex/flashbuilder_extensibility/CodeModel/index.html?overview-summary.html is broken.
Link is fixed now. Devnet folks keep moving it around
With which version of the Flex SDK is this new compiler going to be included? Hero, or some further off and more vaguely specified build? I’m looking forward to the day when the Code Model stuff (or its derivatives) is included outside of com.adobe.flexbuilder.
Not sure which version it will be included in, but it will be worth it when it hits