On 8/20/15, 9:19 AM, "Josh Tynjala" <joshtynj...@gmail.com> wrote:

>These are pretty straightforward options:
>
>js-mxmlc
>jsmxmlc
>
>I'd lean more towards the version with the dash in the name, if we
>consider
>that we also have a jqueryc to rename. I think jquery-mxmlc is easier to
>read than jquerymxmlc.

Interesting, I thought you didn’t want it to start with “js" and that it
should start with “as” instead given the input is “as”.

I just remembered that, while the launch scripts and jar names may just be
js/bin/mxmlc and js/lib/mxmlc, the main class is actually mxmljsc.  So the
pattern there is "<input><output>c"

One way to think about it is that there are compilers and then launch
scripts that set up those compilers with different default libraries. So
the compiler jar could be renamed to mxmljsc.jar.  Separately, we create a
bunch of launch scripts where:

mxmljsc-flexjs runs the current mxmlc script
mxmljsc-js runs the current jsc script
mxmljsc-jquery would include the jquery externs


>
>In the future, I would also hope to see node-mxmlc for NodeJS.
>
>Does MXML work with this output type? If not, then maybe using asc in the
>name would be better:
>
>js-asc
>Jsasc

You can feed it MXML, but more work needs to be done to have the generated
code do something.  So I suppose we could create non-MXML clients like as
asjsc.jar and have the scripts called

asjsc-flexjs
asjsc-js
asjsc-jquery

I’m sure there are bugs, but the MXML compiler is supposed to be
framework-agnostic.  It just generates a data structure based on a mapping
of tags and namespaces to the classes in the libraries in the library
path.  It is up to code in the libraries to interpret the data structure.
No such code exists for js.swc and jquery.swc yet (or feathers.swc).  The
MXML compiler would also work better if there was appropriate metadata on
the classes in the swcs to expose events.  And folks are generally used to
using namespaces for the components so a manifest.xml file is recommended.

The data structure is hierarchical and added as a property to the
top-level class.  That class is supposed to find a good time in its
lifecycle to interpret the data structure to generate and add children.
That way an MXML-capable JQuery or Feathers library can each have their
own way of adding children.

-Alex

Reply via email to