On Tue, Aug 14, 2012 at 3:58 PM, Gordon Smith <gosm...@adobe.com> wrote:

> > Falcon is a new version of the Actionscript compiler.
>
> Falcon is a reimplementation of mxmlc and compc. The AS support is very
> good. (It will ship as FB 4.7.) The MXML support is incomplete but Falcon
> can compile the framework test file Checkinapp.mxml.
>
> > Does it support mxml as well?  Or would that be a separate top level
> project?
>
> See above.
>
> > What do we call the compiler that is currently inside trunk?
>
> I call it "the legacy compiler".
>
> > If falcon gets a new top level project, shouldnt the current compiler
> get its own top level project?
>
> I don't have an opinion on that. I hope the old compiler dies as soon as
> possible.
>
> > Does Falcon work with exisiting flex sdk?
>
> It 's intended to eventually, but it's not yet ready to compile and run
> all SDK SWCs and tests yet.
>
> > If I create new components inside incubator/flex/SDK/trunk/, should I
> worry about who Falcon will work with it?  How would I set up my project in
> that case?
>
> Unless you want to contribute to Falcon, you shouldn't worry about it. At
> some point, if it becomes a suitable replacement for the legacy compiler,
> we will switch over and everything should just work the same.
>
> > Should I have copies of my new components in both
> incubator/flex/SDK/trunk/ and incubator/flex/Falcon/trunk/ to run both
> Mustella tests and Falcon's tests?
>
> No; incubator/flex/Falcon/trunk will be only for Falcon's Java code. No
> framework components will live there.
>
> >  Does Falcon share any code with Falcon JS?
>
> Yes, it shares a front end (lexer/parser/symbol table). FalconJS and
> Falcon have different back ends (code generators). FalconJS is not ready
> for donation.
>
> > If yes, how might we want to change the repo structure if/when FalconJS
> is contributed to Apache Flex?
>
> We can figure that out when FalconJS is ready, but I think making it a
> sibling of Falcon would be best. It could share Falcon's front end just by
> putting Falcon's JAR on its classpath.
>
> - Gordon
>
>
Thanks Gordon!

>From what I read, it looks like Falcon is a new feature that will be added
to Apache Flex.   I believe it should be under /flex/trunk/modules/falcon.
And since it might be highly unstable, we should probably create a 'falcon'
branch to do this in.  Especially since you want to replace
/flex/trunk/modules/asc and /flex/trunk/modules/compile with the falcon
compiler.

I think this structure follows what we have been discussing in the
branching strategy threads.

Elsewhere, you said:

If Flex has independent subprojects like SDK, Falcon, TLF, etc., how would
> we tie them all together to do testing? With environment variables that say
> "use this branch of the SDK, this branch of Falcon, this branch of TLF,
> etc."?
>

Keeping it under /flex/trunk/modules/falcon would solve this problem too,
right?

Eventually we should throwaway the /flex/trunk/modules/asc/ (legacy
compiler) and rename falcon to asc as well.

As I see it, Falcon is a codename for a new version of the compiler.  We
are mixing functional names like "asc" and "compiler" with codenames like
"falcon".  What happens when we want to build a new version of actionscript
compiler after falcon?  We dont want to have that existing alongside with
another codename as well.

Thanks,
Om

Reply via email to