It seems to me there’s a question of perception as to what “Flex” is.
Historically, Flex has been an application framework centered around components. The equivalent in the JS world would probably be something like Sencha’s UI frameworks. (i.e. ext js) or JQuery UI. So, when people hear “Flex” they think “application lego”. Flex also has the functionality of the class of frameworks (in the js world) like Ember or Angular which deal mostly with data consumption and data binding. Very little lego there. It’s more the glue that holds stuff together. We also have the Falcon compiler which enables cross-compiling ActionScript irrespective of the application components (ala ext js) or the application “glue” ala Angular. It seems to me that to call all of these things “FlexJS” seems too broad to prevent confusion. It seems to me that there needs to be a distinction between these different areas of capabilities. Thoughts? On Jul 10, 2014, at 12:43 AM, Alex Harui <aha...@adobe.com> wrote: > Well, like I said, I'm not an expert on this stuff. My brief look at > Angular gave me the impression that it was about declarative markup for an > extensible component model. I think that's what we have too. > > The key point that I'm not sure is sticking with folks is that FlexJS may > have a default framework, but I really want it to be framework-agnostic. > A framework developer can implement, mimic or mock the JS components from > some JS framework in an AS SWC to enable the application developer to glue > their favorite JS components together with AS. Then the final > cross-compiled output has a much better chance of working correctly, and > the net should be better developer productivity. > > -Alex > > On 7/9/14 11:13 AM, "Harbs" <harbs.li...@gmail.com> wrote: > >> Hmm. >> >> I might have been misunderstanding you. >> >> I thought you were discussing getting FlexJS with mxml markup, data >> binding and everything else to work with Angular. That’s what I don’t see >> as a fit. >> >> If you mean to simply write Angular applications in AS instead of JS and >> cross-compile using FalconJX, then yes, that should (probably) work. >> Besides TypeScript, you can also use CoffeeScript as well as Angular Dart. >> >> I can see an argument to write Angular in AS, but that is just utilizing >> the compiler, rather than the FlexJS framework as a whole. I also don’t >> think that it makes sense to create an ActionScript compile target for >> Angular apps. >> >> Harbs >> >> On Jul 9, 2014, at 8:48 PM, Alex Harui <aha...@adobe.com> wrote: >> >>> OK, I'll try to find time to read up on Angular. It does appear that >>> TypeScript works with Angular. My rudimentary understanding of this >>> stuff >>> says that if you can use TS you should be able to use AS as well, but I >>> could certainly be wrong. >>> >>> -Alex >>> >>> On 7/9/14 10:43 AM, "Harbs" <harbs.li...@gmail.com> wrote: >>> >>>> FWIW, here’s some Angular-compatible components: >>>> http://angular-ui.github.io/ >>>> http://angular-ui.github.io/bootstrap/ >>>> http://angular-ui.github.io/ng-grid/ >>>> >>>> and a whole site dedicated to cataloging Angular modules (some of it >>>> UI, >>>> and some of it business logic): >>>> http://ngmodules.org/ >>>> >>>> As you can see, except for the basic HTML elements, any UI that is used >>>> with Angular is going to be external modules from either existing UI >>>> frameworks (i.e. Bootstrap), or ones built specifically for Angular. >>>> None >>>> of these are part of the core Angular framework. >>>> >>>> I do think that for FlexJS to be successful, we would need some kind of >>>> public catalog of external modules (components) similar to the >>>> ngmodules >>>> site. >>>> >>>> On Jul 9, 2014, at 8:11 PM, Harbs <harbs.li...@gmail.com> wrote: >>>> >>>>> Angular is not really components. It’s more the glue that holds the >>>>> components together. >>>>> >>>>> Basically, the selling point of Angular is how it binds javascript to >>>>> HTML. Building custom Angular components is the hardest part of using >>>>> the framework (and for the most part is not part of the framework >>>>> itself). They call them “directives” and they have very unintuitive >>>>> json >>>>> markup that goes with the js code. >>>>> >>>>> Angular pretty strongly prescribes how the app is put together and >>>>> it’s >>>>> comprised of HTML template and directive files which comprise the >>>>> view, >>>>> and controller/factory/service files which comprise the model and >>>>> controller. >>>>> >>>>> >>>>> On Jul 9, 2014, at 7:44 PM, Alex Harui <aha...@adobe.com> wrote: >>>>> >>>>>> >>>>>> >>>>>> On 7/9/14 9:16 AM, "Harbs" <harbs.li...@gmail.com> wrote: >>>>>> >>>>>>> I wouldn¹t call myself an expert on the subject, but I have had the >>>>>>> opportunity to familiarize myself with both Angular and Create.js >>>>>>> the >>>>>>> past half year. >>>>>>> >>>>>>> Create.js makes sense to integrate into FlexJS. I¹m not sure I >>>>>>> understand >>>>>>> how Angular would/could be integrated. It seems to me that Angular >>>>>>> is >>>>>>> a >>>>>>> competing framework and I don¹t understand how the two could work >>>>>>> together. >>>>>> IMO, most JS frameworks offer a set of components that you glue >>>>>> together >>>>>> with JS. I'm not an expert on these frameworks, but I think Angular >>>>>> is >>>>>> one of them. Assuming the JS framework is not buggy, I think there >>>>>> is >>>>>> a >>>>>> lot of pain in writing and debugging the JS code that glues the >>>>>> components >>>>>> together (the rest of the pain is probably in browser-specific >>>>>> issues). >>>>>> TypeScript seems to have reached the same conclusion and offers a new >>>>>> language to do the gluing. I'd say Dart and GWT also have the same >>>>>> thoughts. >>>>>> >>>>>> FlexJS has the potential to be on-par or better as a way to do the >>>>>> gluing. >>>>>> We have IDEs, we have runtime verification, and we have declarative >>>>>> markup in MXML. >>>>>> >>>>>> Think of it this way. If IKEA or other assemble-it-yourself >>>>>> furniture >>>>>> makers shipped you a box of pieces cut to size and then just nails >>>>>> and >>>>>> screws and pre-drilled holes, you'd make a lot of mistakes building >>>>>> the >>>>>> furniture. Instead, these manufacturers use special connectors >>>>>> making >>>>>> it >>>>>> much more clear what goes where and making it impossible to make >>>>>> certain >>>>>> kinds of errors. >>>>>> >>>>>> IMO, classes are those special connectors. JS is just nails and >>>>>> screws. >>>>>> In JS, you can attach anything to anything and won't find out until >>>>>> much >>>>>> later. In FlexJS, we can offer both better connectors and a >>>>>> schematic >>>>>> diagram (MXML). >>>>>> >>>>>> -Alex >>>>>> >>>>>>> >>>>>>> On Jul 9, 2014, at 5:28 PM, Alex Harui <aha...@adobe.com> wrote: >>>>>>> >>>>>>>> I hope to attract Jquery, Angular, >>>>>>>> CreateJS experts and fans to build out these frameworks and making >>>>>>>> them >>>>>>>> wade through the current SDK would probably be an inhibitor to >>>>>>>> them. >>>>>>> >>>>>> >>>>> >>>> >>> >> >