Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-28 Thread Josh Tynjala
Yeah, the ES5 output. While I think the output looks good from TypeScript,
I figured it wouldn't hurt to point out an alternative. I'm sure it's
pretty similar, but when it comes to the little details, you might see
something there that you like better.

- Josh
On May 27, 2015 4:01 PM, Michael Schmalle teotigraphix...@gmail.com
wrote:

 So basically your saying the output of ES5 from Babel?

 Mike

 On Wed, May 27, 2015 at 6:47 PM, Josh Tynjala joshtynj...@gmail.com
 wrote:

  You might also consider looking at the output of Babel. Babel transpiles
  ECMAScript 6 back to older versions of the language that are more widely
  supported today. TypeScript is trying to be a superset of ES6, so it
 should
  be pretty similar.
 
  http://babeljs.io
 
  - Josh
 
  On Wed, May 27, 2015 at 2:23 PM, Michael Schmalle 
  teotigraphix...@gmail.com
   wrote:
 
   Ok Update.
  
   I have been researching TypeScript and it's output, this is what I am
   doing. For some reason this just makes sense to me and the are 100's
 of
   examples I can use to test the code generation against.
  
   Josh, I would say if you want to start experimenting with your
 framework,
   use what you just showed me as a base and I can meet you in the middle,
   then we can figure our the quirks together.
  
   I will/am start/ing working on this ASAP.
  
   Mike
  
   On Wed, May 27, 2015 at 4:54 PM, Michael Schmalle 
   teotigraphix...@gmail.com
wrote:
  
Ok,
   
I am a doer... :) Since this is all POC right now and I am up to
 learn
some JS, I will use this as a format. I have done this JSEmitter 2
  times
now so the 3rd isn't going to be that hard, maybe the charm for me
 to.
   
Note, most of the expressions and statements are already done. As
  noted,
inheritance, scope and set/get always are the pains but if I have a
   target
output protocol like TypeScript's output, why not emulate it.
   
Alex, I know what you are thinking... Don't. :) My gut feeling is,
 if I
start from the ground up and have NO dependencies on anything, I will
  do
this twice as fast. I am very good at refactoring so once I have
 tests
working on the generated .js, we can see what could be abstracted to
  and
from this emitter and FlexJS.
   
I really think for my own sanity, I need to start in isolation and
 not
   get
in FlexJS's way either, that is another pro for me, no commit
  conflicts,
nothing of that nature.
   
Thoughts Josh, Alex?
   
Mike
   
   
   
   
   
   
On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala joshtynj...@gmail.com
 
wrote:
   
When I played with TypeScript, I loved that I could subclass
 CreateJS
prototypes very easily. As long as something like that is possible
  from
ActionScript (assuming I could provide a SWC or something for
 CreateJS
   or
whichever library I want to use), I don't have too strong of an
  opinion
   on
how the final JavaScript looks.
   
I'll just say that I like the clean code that the TypeScript
 compiler
outputs. To me, it looked pretty much like what I might write
  manually,
   if
I were using vanilla JavaScript. Looking at the TypeScript
 playground,
   the
Inheritance example and the Modules example both look very nice.
   
http://www.typescriptlang.org/Playground
   
- Josh
   
On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
teotigraphix...@gmail.com wrote:
   
 On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com
  wrote:

  New thread:
 
 
 
  On 5/27/15, 9:52 AM, Michael Schmalle 
  teotigraphix...@gmail.com
 wrote:
 
  Well, when I said teach I just meant getting into the code.
Really, I
  know the base part of the compiler and the walker/visitor
  framework
well
  ;-), so getting FalconJX to use an HTML.swc would be exactly
  what I
am
  looking for to do.
  
  This is where you can keep doing what you are good at and I can
   work
on
  what I am good at(code rendering).
  
  Can I ask you to start another thread and outline what you see
   needs
to
 be
  done to accomplish what is in your mind dealing with FalconJX
 and
   the
  HTML.swc? If you can just brainstorm, then I can ask you
  questions
   to
 fill
  in the gaps that I am not seeing.
  
 
  As I see it, FalconJX should just be able to grab some SWCs and
  cross-compile some AS based on definitions in the SWCs.  Right
 now
   we
 feed
  it playerglobal/airglobal and FlexJS swcs with UIBase widgets,
 but
   in
  theory, as Josh suggests we should be able to replace those SWCs
   with
 just:
 
  jsglobal.swc:
  Object
  Number
  String
  what else?
 
  HTML.swc:
  Window
  Event
  UIEvent
  MouseEvent
  HTMLElement
  etc.
 
 
 See for HTML lib, Roland used WebIDL parser to create it;


   

Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-28 Thread Josh Tynjala
Well, the original plan of matching TypeScript's output is fine with me. I
didn't mean to confuse you by throwing something extra in there. I haven't
looked as closely at Babel, but I heard good things. I figured knowledge of
Babel would be good to have around to sanity check things in case
TypeScript's output had unexpected issues.

- Josh
On May 28, 2015 7:47 AM, Michael Schmalle teotigraphix...@gmail.com
wrote:

 Well see Josh, I am good at writing cross compilers but have spent hardly
 any time understanding all the nuances of javascript.

 Each time I have written this thing, I have had a spec given to me by
 others that I made work. So I am kind of looking for that spec here so I
 have something concrete to generate. I don't have enough experience to know
 what it should be for the needs of a proper javascript impl and
 actionscript cross compile.

 Mike

 On Thu, May 28, 2015 at 10:34 AM, Josh Tynjala joshtynj...@gmail.com
 wrote:

  Yeah, the ES5 output. While I think the output looks good from
 TypeScript,
  I figured it wouldn't hurt to point out an alternative. I'm sure it's
  pretty similar, but when it comes to the little details, you might see
  something there that you like better.
 
  - Josh
  On May 27, 2015 4:01 PM, Michael Schmalle teotigraphix...@gmail.com
  wrote:
 
   So basically your saying the output of ES5 from Babel?
  
   Mike
  
   On Wed, May 27, 2015 at 6:47 PM, Josh Tynjala joshtynj...@gmail.com
   wrote:
  
You might also consider looking at the output of Babel. Babel
  transpiles
ECMAScript 6 back to older versions of the language that are more
  widely
supported today. TypeScript is trying to be a superset of ES6, so it
   should
be pretty similar.
   
http://babeljs.io
   
- Josh
   
On Wed, May 27, 2015 at 2:23 PM, Michael Schmalle 
teotigraphix...@gmail.com
 wrote:
   
 Ok Update.

 I have been researching TypeScript and it's output, this is what I
 am
 doing. For some reason this just makes sense to me and the are
  100's
   of
 examples I can use to test the code generation against.

 Josh, I would say if you want to start experimenting with your
   framework,
 use what you just showed me as a base and I can meet you in the
  middle,
 then we can figure our the quirks together.

 I will/am start/ing working on this ASAP.

 Mike

 On Wed, May 27, 2015 at 4:54 PM, Michael Schmalle 
 teotigraphix...@gmail.com
  wrote:

  Ok,
 
  I am a doer... :) Since this is all POC right now and I am up to
   learn
  some JS, I will use this as a format. I have done this JSEmitter
 2
times
  now so the 3rd isn't going to be that hard, maybe the charm for
 me
   to.
 
  Note, most of the expressions and statements are already done. As
noted,
  inheritance, scope and set/get always are the pains but if I
 have a
 target
  output protocol like TypeScript's output, why not emulate it.
 
  Alex, I know what you are thinking... Don't. :) My gut feeling
 is,
   if I
  start from the ground up and have NO dependencies on anything, I
  will
do
  this twice as fast. I am very good at refactoring so once I have
   tests
  working on the generated .js, we can see what could be abstracted
  to
and
  from this emitter and FlexJS.
 
  I really think for my own sanity, I need to start in isolation
 and
   not
 get
  in FlexJS's way either, that is another pro for me, no commit
conflicts,
  nothing of that nature.
 
  Thoughts Josh, Alex?
 
  Mike
 
 
 
 
 
 
  On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala 
  joshtynj...@gmail.com
   
  wrote:
 
  When I played with TypeScript, I loved that I could subclass
   CreateJS
  prototypes very easily. As long as something like that is
 possible
from
  ActionScript (assuming I could provide a SWC or something for
   CreateJS
 or
  whichever library I want to use), I don't have too strong of an
opinion
 on
  how the final JavaScript looks.
 
  I'll just say that I like the clean code that the TypeScript
   compiler
  outputs. To me, it looked pretty much like what I might write
manually,
 if
  I were using vanilla JavaScript. Looking at the TypeScript
   playground,
 the
  Inheritance example and the Modules example both look very nice.
 
  http://www.typescriptlang.org/Playground
 
  - Josh
 
  On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
  teotigraphix...@gmail.com wrote:
 
   On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com
 
wrote:
  
New thread:
   
   
   
On 5/27/15, 9:52 AM, Michael Schmalle 
teotigraphix...@gmail.com
   wrote:
   
Well, when I said teach I just meant getting into the
 code.
  Really, I

Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-28 Thread Michael Schmalle
Well see Josh, I am good at writing cross compilers but have spent hardly
any time understanding all the nuances of javascript.

Each time I have written this thing, I have had a spec given to me by
others that I made work. So I am kind of looking for that spec here so I
have something concrete to generate. I don't have enough experience to know
what it should be for the needs of a proper javascript impl and
actionscript cross compile.

Mike

On Thu, May 28, 2015 at 10:34 AM, Josh Tynjala joshtynj...@gmail.com
wrote:

 Yeah, the ES5 output. While I think the output looks good from TypeScript,
 I figured it wouldn't hurt to point out an alternative. I'm sure it's
 pretty similar, but when it comes to the little details, you might see
 something there that you like better.

 - Josh
 On May 27, 2015 4:01 PM, Michael Schmalle teotigraphix...@gmail.com
 wrote:

  So basically your saying the output of ES5 from Babel?
 
  Mike
 
  On Wed, May 27, 2015 at 6:47 PM, Josh Tynjala joshtynj...@gmail.com
  wrote:
 
   You might also consider looking at the output of Babel. Babel
 transpiles
   ECMAScript 6 back to older versions of the language that are more
 widely
   supported today. TypeScript is trying to be a superset of ES6, so it
  should
   be pretty similar.
  
   http://babeljs.io
  
   - Josh
  
   On Wed, May 27, 2015 at 2:23 PM, Michael Schmalle 
   teotigraphix...@gmail.com
wrote:
  
Ok Update.
   
I have been researching TypeScript and it's output, this is what I am
doing. For some reason this just makes sense to me and the are
 100's
  of
examples I can use to test the code generation against.
   
Josh, I would say if you want to start experimenting with your
  framework,
use what you just showed me as a base and I can meet you in the
 middle,
then we can figure our the quirks together.
   
I will/am start/ing working on this ASAP.
   
Mike
   
On Wed, May 27, 2015 at 4:54 PM, Michael Schmalle 
teotigraphix...@gmail.com
 wrote:
   
 Ok,

 I am a doer... :) Since this is all POC right now and I am up to
  learn
 some JS, I will use this as a format. I have done this JSEmitter 2
   times
 now so the 3rd isn't going to be that hard, maybe the charm for me
  to.

 Note, most of the expressions and statements are already done. As
   noted,
 inheritance, scope and set/get always are the pains but if I have a
target
 output protocol like TypeScript's output, why not emulate it.

 Alex, I know what you are thinking... Don't. :) My gut feeling is,
  if I
 start from the ground up and have NO dependencies on anything, I
 will
   do
 this twice as fast. I am very good at refactoring so once I have
  tests
 working on the generated .js, we can see what could be abstracted
 to
   and
 from this emitter and FlexJS.

 I really think for my own sanity, I need to start in isolation and
  not
get
 in FlexJS's way either, that is another pro for me, no commit
   conflicts,
 nothing of that nature.

 Thoughts Josh, Alex?

 Mike






 On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala 
 joshtynj...@gmail.com
  
 wrote:

 When I played with TypeScript, I loved that I could subclass
  CreateJS
 prototypes very easily. As long as something like that is possible
   from
 ActionScript (assuming I could provide a SWC or something for
  CreateJS
or
 whichever library I want to use), I don't have too strong of an
   opinion
on
 how the final JavaScript looks.

 I'll just say that I like the clean code that the TypeScript
  compiler
 outputs. To me, it looked pretty much like what I might write
   manually,
if
 I were using vanilla JavaScript. Looking at the TypeScript
  playground,
the
 Inheritance example and the Modules example both look very nice.

 http://www.typescriptlang.org/Playground

 - Josh

 On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
 teotigraphix...@gmail.com wrote:

  On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com
   wrote:
 
   New thread:
  
  
  
   On 5/27/15, 9:52 AM, Michael Schmalle 
   teotigraphix...@gmail.com
  wrote:
  
   Well, when I said teach I just meant getting into the code.
 Really, I
   know the base part of the compiler and the walker/visitor
   framework
 well
   ;-), so getting FalconJX to use an HTML.swc would be exactly
   what I
 am
   looking for to do.
   
   This is where you can keep doing what you are good at and I
 can
work
 on
   what I am good at(code rendering).
   
   Can I ask you to start another thread and outline what you
 see
needs
 to
  be
   done to accomplish what is in your mind dealing with FalconJX
  and
the
   HTML.swc? If you can just brainstorm, then I can ask you
 

Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-28 Thread Michael Schmalle
On Thu, May 28, 2015 at 11:00 AM, Josh Tynjala joshtynj...@gmail.com
wrote:

 Well, the original plan of matching TypeScript's output is fine with me. I
 didn't mean to confuse you by throwing something extra in there. I haven't
 looked as closely at Babel, but I heard good things. I figured knowledge of
 Babel would be good to have around to sanity check things in case
 TypeScript's output had unexpected issues.


Yeah one of them that I wouldn't have caught early on would be accessors
support.

Well for now, I will match TypeScripts output and we can use Bable's way of
calling super on accessors. I will just make sure to leave it swappable, or
try to, sometimes with AST walking things get spider webed quick, which I
am going to try and avoid by using more composition.

If this intrigues you enough to start writing a framework, :) we can nail
the details later.

Did you see ALex's question to you about goog dependencies and if you had a
problem with that?

Mike





 - Josh
 On May 28, 2015 7:47 AM, Michael Schmalle teotigraphix...@gmail.com
 wrote:

  Well see Josh, I am good at writing cross compilers but have spent hardly
  any time understanding all the nuances of javascript.
 
  Each time I have written this thing, I have had a spec given to me by
  others that I made work. So I am kind of looking for that spec here so I
  have something concrete to generate. I don't have enough experience to
 know
  what it should be for the needs of a proper javascript impl and
  actionscript cross compile.
 
  Mike
 
  On Thu, May 28, 2015 at 10:34 AM, Josh Tynjala joshtynj...@gmail.com
  wrote:
 
   Yeah, the ES5 output. While I think the output looks good from
  TypeScript,
   I figured it wouldn't hurt to point out an alternative. I'm sure it's
   pretty similar, but when it comes to the little details, you might see
   something there that you like better.
  
   - Josh
   On May 27, 2015 4:01 PM, Michael Schmalle teotigraphix...@gmail.com
 
   wrote:
  
So basically your saying the output of ES5 from Babel?
   
Mike
   
On Wed, May 27, 2015 at 6:47 PM, Josh Tynjala joshtynj...@gmail.com
 
wrote:
   
 You might also consider looking at the output of Babel. Babel
   transpiles
 ECMAScript 6 back to older versions of the language that are more
   widely
 supported today. TypeScript is trying to be a superset of ES6, so
 it
should
 be pretty similar.

 http://babeljs.io

 - Josh

 On Wed, May 27, 2015 at 2:23 PM, Michael Schmalle 
 teotigraphix...@gmail.com
  wrote:

  Ok Update.
 
  I have been researching TypeScript and it's output, this is what
 I
  am
  doing. For some reason this just makes sense to me and the are
   100's
of
  examples I can use to test the code generation against.
 
  Josh, I would say if you want to start experimenting with your
framework,
  use what you just showed me as a base and I can meet you in the
   middle,
  then we can figure our the quirks together.
 
  I will/am start/ing working on this ASAP.
 
  Mike
 
  On Wed, May 27, 2015 at 4:54 PM, Michael Schmalle 
  teotigraphix...@gmail.com
   wrote:
 
   Ok,
  
   I am a doer... :) Since this is all POC right now and I am up
 to
learn
   some JS, I will use this as a format. I have done this
 JSEmitter
  2
 times
   now so the 3rd isn't going to be that hard, maybe the charm for
  me
to.
  
   Note, most of the expressions and statements are already done.
 As
 noted,
   inheritance, scope and set/get always are the pains but if I
  have a
  target
   output protocol like TypeScript's output, why not emulate it.
  
   Alex, I know what you are thinking... Don't. :) My gut feeling
  is,
if I
   start from the ground up and have NO dependencies on anything,
 I
   will
 do
   this twice as fast. I am very good at refactoring so once I
 have
tests
   working on the generated .js, we can see what could be
 abstracted
   to
 and
   from this emitter and FlexJS.
  
   I really think for my own sanity, I need to start in isolation
  and
not
  get
   in FlexJS's way either, that is another pro for me, no commit
 conflicts,
   nothing of that nature.
  
   Thoughts Josh, Alex?
  
   Mike
  
  
  
  
  
  
   On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala 
   joshtynj...@gmail.com

   wrote:
  
   When I played with TypeScript, I loved that I could subclass
CreateJS
   prototypes very easily. As long as something like that is
  possible
 from
   ActionScript (assuming I could provide a SWC or something for
CreateJS
  or
   whichever library I want to use), I don't have too strong of
 an
 opinion
  on
   how the final JavaScript looks.
  
   I'll just say that I like 

Re: [FalconJX FlexJS] JIRA issues and helping with the compiler

2015-05-27 Thread OmPrakash Muppirala
On Wed, May 27, 2015 at 10:46 AM, Michael Schmalle 
teotigraphix...@gmail.com wrote:

 Alex,

 Thinking about this more.

 I have 1 or 2 apps that are more administrative such as a library
 manager, MIDI importer, metadata manager for the Caustic files that are on
 the device.

 Seeing that HTML is more text/editor centric, I could see myself trying to
 get the native extension working sooner than later and using the
 framework/components to build these simpler apps. This might actually be a
 good thing since those apps are more secondary to the main ones.

 The other apps are quite graphic intensive and I don't know exactly how
 easy they will be to create in straight HTML. I am thinking more
 webgl/feathers like implementation will be needed for the graphics. Albeit,
 I am still ignorant to what kind of graphics I could do on Android with
 either the embedded web view Cordova provides or some other option.

 As you can see I am REALLY trying to find a reason to set aside a good
 amount of time to get this project moving on the low level.

 @Om this is why I was interested in what you were thinking about FXG/SVG
 and having components use them. It would be easier to use that then
 Bitmaps, maybe, I guess I use straight Bitmaps with Feathers so I don't
 know. :)


Do you have an example of what kind of stuff you want to draw for your
apps?  If you can give me some direction, we could collaboratively start
hacking on it.

Thanks,
Om



 Mike


 On Wed, May 27, 2015 at 12:52 PM, Michael Schmalle 
 teotigraphix...@gmail.com wrote:

 
 
  On Wed, May 27, 2015 at 12:37 PM, Alex Harui aha...@adobe.com wrote:
 
 
 
  On 5/27/15, 9:02 AM, Michael Schmalle teotigraphix...@gmail.com
  wrote:
 
  
  In the FlexJS and FalconJX categories there is not much and just
 assuming
  since your are basically the main committer on the compiler right now,
  that
  you just fix stuff and don't enter issues.
 
  Yep.  Although if more folks are going to work on stuff I’ll be more
  motivated to file tickets.
 
  
  That said, is there anything that you know about with the compiler
  FalconJX/FlexJS that I could work on to get my feet wet? Or are your
  TODOs
  more based on the fact you know exactly what is going on there and I
  can't
  do much until I fully understand the tool chain of FlexJS and GCC?
 
  I don’t think I have a list in my head that will help you learn the tool
  chain.  I want to suppress the GCC warnings, but I don’t think that will
  teach you much.  I want to explore Josh’s idea of FalconJX with a native
  HTML swc so we can write all of our JS code in AS.  If you want to work
 on
  that, that would be awesome, but it may not teach you how the FlexJS
  workflow is supposed to go.
 
 
 
  Ok, that answered my question.
 
  Well, when I said teach I just meant getting into the code. Really, I
  know the base part of the compiler and the walker/visitor framework well
  ;-), so getting FalconJX to use an HTML.swc would be exactly what I am
  looking for to do.
 
  This is where you can keep doing what you are good at and I can work on
  what I am good at(code rendering).
 
  Can I ask you to start another thread and outline what you see needs to
 be
  done to accomplish what is in your mind dealing with FalconJX and the
  HTML.swc? If you can just brainstorm, then I can ask you questions to
 fill
  in the gaps that I am not seeing.
 
 
 
 
  Peter and I are working on our own apps that use FlexJS.  It rarely
 works
  like we’d like it to, then we fix the compiler or FlexJS code until it
  does.  It might be best for you to simply start on a test app that uses
  your NativeExtension and try to get it working in Cordova.  Or, if that
  feels like too big a bite, I’ll push the app I’m working on and you can
  work on it as well if you find it interesting.
 
 
 
  This would be beneficial for me as well and probably others. I could see
  myself learning from something you are actively working on and looking at
  your commits.
 
  Right now I have a September target for about 4-5 Feathers mobile Android
  apps I am working on to release based on Caustic audio engine, that is my
  income. :) So the Crodova experiment I see coming in the Fall/Winter
 when I
  am more sound in what's going on and the component framework is a bit
 more
  mature.
 
 
 
 
  As always, I’m glad you have your and Fred’s and everyone else’s help.
 
 
 
  Yeah, well if my apps take off, which they should since I am working with
  the dev of Caustic, I will have a 100% excuse to keep working on this
  project for the foreseeable future. As you can see, with apps selling
 using
  native extensions and AIR, my motivation to get them to work in
  HTML/Cordova increases 10 fold because they are already successful on one
  platform. This is a good thing.
 
  Mike
 
 
  -Alex
 
 
 



Re: [FalconJX FlexJS] JIRA issues and helping with the compiler

2015-05-27 Thread Michael Schmalle
@Om

Checkout page 1 and 2 of this thread. I am using OSC and AIR/Feathers to
control Bitwig(Audio DAW).

http://www.kvraudio.com/forum/viewtopic.php?f=259t=435857

The above is the same type of stuff I am drawing in my Caustic apps. Let me
know if that makes sense to you.

Mike


On Wed, May 27, 2015 at 1:52 PM, OmPrakash Muppirala bigosma...@gmail.com
wrote:

 On Wed, May 27, 2015 at 10:46 AM, Michael Schmalle 
 teotigraphix...@gmail.com wrote:

  Alex,
 
  Thinking about this more.
 
  I have 1 or 2 apps that are more administrative such as a library
  manager, MIDI importer, metadata manager for the Caustic files that are
 on
  the device.
 
  Seeing that HTML is more text/editor centric, I could see myself trying
 to
  get the native extension working sooner than later and using the
  framework/components to build these simpler apps. This might actually be
 a
  good thing since those apps are more secondary to the main ones.
 
  The other apps are quite graphic intensive and I don't know exactly how
  easy they will be to create in straight HTML. I am thinking more
  webgl/feathers like implementation will be needed for the graphics.
 Albeit,
  I am still ignorant to what kind of graphics I could do on Android with
  either the embedded web view Cordova provides or some other option.
 
  As you can see I am REALLY trying to find a reason to set aside a good
  amount of time to get this project moving on the low level.
 
  @Om this is why I was interested in what you were thinking about FXG/SVG
  and having components use them. It would be easier to use that then
  Bitmaps, maybe, I guess I use straight Bitmaps with Feathers so I
 don't
  know. :)
 

 Do you have an example of what kind of stuff you want to draw for your
 apps?  If you can give me some direction, we could collaboratively start
 hacking on it.

 Thanks,
 Om


 
  Mike
 
 
  On Wed, May 27, 2015 at 12:52 PM, Michael Schmalle 
  teotigraphix...@gmail.com wrote:
 
  
  
   On Wed, May 27, 2015 at 12:37 PM, Alex Harui aha...@adobe.com wrote:
  
  
  
   On 5/27/15, 9:02 AM, Michael Schmalle teotigraphix...@gmail.com
   wrote:
  
   
   In the FlexJS and FalconJX categories there is not much and just
  assuming
   since your are basically the main committer on the compiler right
 now,
   that
   you just fix stuff and don't enter issues.
  
   Yep.  Although if more folks are going to work on stuff I’ll be more
   motivated to file tickets.
  
   
   That said, is there anything that you know about with the compiler
   FalconJX/FlexJS that I could work on to get my feet wet? Or are your
   TODOs
   more based on the fact you know exactly what is going on there and I
   can't
   do much until I fully understand the tool chain of FlexJS and GCC?
  
   I don’t think I have a list in my head that will help you learn the
 tool
   chain.  I want to suppress the GCC warnings, but I don’t think that
 will
   teach you much.  I want to explore Josh’s idea of FalconJX with a
 native
   HTML swc so we can write all of our JS code in AS.  If you want to
 work
  on
   that, that would be awesome, but it may not teach you how the FlexJS
   workflow is supposed to go.
  
  
  
   Ok, that answered my question.
  
   Well, when I said teach I just meant getting into the code. Really, I
   know the base part of the compiler and the walker/visitor framework
 well
   ;-), so getting FalconJX to use an HTML.swc would be exactly what I am
   looking for to do.
  
   This is where you can keep doing what you are good at and I can work on
   what I am good at(code rendering).
  
   Can I ask you to start another thread and outline what you see needs to
  be
   done to accomplish what is in your mind dealing with FalconJX and the
   HTML.swc? If you can just brainstorm, then I can ask you questions to
  fill
   in the gaps that I am not seeing.
  
  
  
  
   Peter and I are working on our own apps that use FlexJS.  It rarely
  works
   like we’d like it to, then we fix the compiler or FlexJS code until it
   does.  It might be best for you to simply start on a test app that
 uses
   your NativeExtension and try to get it working in Cordova.  Or, if
 that
   feels like too big a bite, I’ll push the app I’m working on and you
 can
   work on it as well if you find it interesting.
  
  
  
   This would be beneficial for me as well and probably others. I could
 see
   myself learning from something you are actively working on and looking
 at
   your commits.
  
   Right now I have a September target for about 4-5 Feathers mobile
 Android
   apps I am working on to release based on Caustic audio engine, that is
 my
   income. :) So the Crodova experiment I see coming in the Fall/Winter
  when I
   am more sound in what's going on and the component framework is a bit
  more
   mature.
  
  
  
  
   As always, I’m glad you have your and Fred’s and everyone else’s help.
  
  
  
   Yeah, well if my apps take off, which they should since I am working
 with
   the 

Re: [FalconJX FlexJS] JIRA issues and helping with the compiler

2015-05-27 Thread OmPrakash Muppirala
On Wed, May 27, 2015 at 10:58 AM, Michael Schmalle 
teotigraphix...@gmail.com wrote:

 @Om

 Checkout page 1 and 2 of this thread. I am using OSC and AIR/Feathers to
 control Bitwig(Audio DAW).

 http://www.kvraudio.com/forum/viewtopic.php?f=259t=435857

 The above is the same type of stuff I am drawing in my Caustic apps. Let me
 know if that makes sense to you.


I am unable to see any images displayed on that page.  It says:
You do not have the required permissions to view the files attached to
this post.

Thanks,
Om


 Mike


 On Wed, May 27, 2015 at 1:52 PM, OmPrakash Muppirala bigosma...@gmail.com
 
 wrote:

  On Wed, May 27, 2015 at 10:46 AM, Michael Schmalle 
  teotigraphix...@gmail.com wrote:
 
   Alex,
  
   Thinking about this more.
  
   I have 1 or 2 apps that are more administrative such as a library
   manager, MIDI importer, metadata manager for the Caustic files that are
  on
   the device.
  
   Seeing that HTML is more text/editor centric, I could see myself trying
  to
   get the native extension working sooner than later and using the
   framework/components to build these simpler apps. This might actually
 be
  a
   good thing since those apps are more secondary to the main ones.
  
   The other apps are quite graphic intensive and I don't know exactly how
   easy they will be to create in straight HTML. I am thinking more
   webgl/feathers like implementation will be needed for the graphics.
  Albeit,
   I am still ignorant to what kind of graphics I could do on Android with
   either the embedded web view Cordova provides or some other option.
  
   As you can see I am REALLY trying to find a reason to set aside a good
   amount of time to get this project moving on the low level.
  
   @Om this is why I was interested in what you were thinking about
 FXG/SVG
   and having components use them. It would be easier to use that then
   Bitmaps, maybe, I guess I use straight Bitmaps with Feathers so I
  don't
   know. :)
  
 
  Do you have an example of what kind of stuff you want to draw for your
  apps?  If you can give me some direction, we could collaboratively start
  hacking on it.
 
  Thanks,
  Om
 
 
  
   Mike
  
  
   On Wed, May 27, 2015 at 12:52 PM, Michael Schmalle 
   teotigraphix...@gmail.com wrote:
  
   
   
On Wed, May 27, 2015 at 12:37 PM, Alex Harui aha...@adobe.com
 wrote:
   
   
   
On 5/27/15, 9:02 AM, Michael Schmalle teotigraphix...@gmail.com
wrote:
   

In the FlexJS and FalconJX categories there is not much and just
   assuming
since your are basically the main committer on the compiler right
  now,
that
you just fix stuff and don't enter issues.
   
Yep.  Although if more folks are going to work on stuff I’ll be more
motivated to file tickets.
   

That said, is there anything that you know about with the compiler
FalconJX/FlexJS that I could work on to get my feet wet? Or are
 your
TODOs
more based on the fact you know exactly what is going on there and
 I
can't
do much until I fully understand the tool chain of FlexJS and GCC?
   
I don’t think I have a list in my head that will help you learn the
  tool
chain.  I want to suppress the GCC warnings, but I don’t think that
  will
teach you much.  I want to explore Josh’s idea of FalconJX with a
  native
HTML swc so we can write all of our JS code in AS.  If you want to
  work
   on
that, that would be awesome, but it may not teach you how the FlexJS
workflow is supposed to go.
   
   
   
Ok, that answered my question.
   
Well, when I said teach I just meant getting into the code.
 Really, I
know the base part of the compiler and the walker/visitor framework
  well
;-), so getting FalconJX to use an HTML.swc would be exactly what I
 am
looking for to do.
   
This is where you can keep doing what you are good at and I can work
 on
what I am good at(code rendering).
   
Can I ask you to start another thread and outline what you see needs
 to
   be
done to accomplish what is in your mind dealing with FalconJX and the
HTML.swc? If you can just brainstorm, then I can ask you questions to
   fill
in the gaps that I am not seeing.
   
   
   
   
Peter and I are working on our own apps that use FlexJS.  It rarely
   works
like we’d like it to, then we fix the compiler or FlexJS code until
 it
does.  It might be best for you to simply start on a test app that
  uses
your NativeExtension and try to get it working in Cordova.  Or, if
  that
feels like too big a bite, I’ll push the app I’m working on and you
  can
work on it as well if you find it interesting.
   
   
   
This would be beneficial for me as well and probably others. I could
  see
myself learning from something you are actively working on and
 looking
  at
your commits.
   
Right now I have a September target for about 4-5 Feathers mobile
  Android
apps I am working on to 

Re: [FalconJX FlexJS] JIRA issues and helping with the compiler

2015-05-27 Thread Michael Schmalle
Ok, I will have these screenshots then. Must I didn't know non logged in
people couldn't view images on KVR.

http://snag.gy/ajFEZ.jpg

http://snag.gy/vCJen.jpg

http://snag.gy/785HX.jpg

Mike

On Wed, May 27, 2015 at 2:01 PM, OmPrakash Muppirala bigosma...@gmail.com
wrote:

 On Wed, May 27, 2015 at 10:58 AM, Michael Schmalle 
 teotigraphix...@gmail.com wrote:

  @Om
 
  Checkout page 1 and 2 of this thread. I am using OSC and AIR/Feathers to
  control Bitwig(Audio DAW).
 
  http://www.kvraudio.com/forum/viewtopic.php?f=259t=435857
 
  The above is the same type of stuff I am drawing in my Caustic apps. Let
 me
  know if that makes sense to you.
 
 
 I am unable to see any images displayed on that page.  It says:
 You do not have the required permissions to view the files attached to
 this post.

 Thanks,
 Om


  Mike
 
 
  On Wed, May 27, 2015 at 1:52 PM, OmPrakash Muppirala 
 bigosma...@gmail.com
  
  wrote:
 
   On Wed, May 27, 2015 at 10:46 AM, Michael Schmalle 
   teotigraphix...@gmail.com wrote:
  
Alex,
   
Thinking about this more.
   
I have 1 or 2 apps that are more administrative such as a library
manager, MIDI importer, metadata manager for the Caustic files that
 are
   on
the device.
   
Seeing that HTML is more text/editor centric, I could see myself
 trying
   to
get the native extension working sooner than later and using the
framework/components to build these simpler apps. This might actually
  be
   a
good thing since those apps are more secondary to the main ones.
   
The other apps are quite graphic intensive and I don't know exactly
 how
easy they will be to create in straight HTML. I am thinking more
webgl/feathers like implementation will be needed for the graphics.
   Albeit,
I am still ignorant to what kind of graphics I could do on Android
 with
either the embedded web view Cordova provides or some other option.
   
As you can see I am REALLY trying to find a reason to set aside a
 good
amount of time to get this project moving on the low level.
   
@Om this is why I was interested in what you were thinking about
  FXG/SVG
and having components use them. It would be easier to use that then
Bitmaps, maybe, I guess I use straight Bitmaps with Feathers so I
   don't
know. :)
   
  
   Do you have an example of what kind of stuff you want to draw for your
   apps?  If you can give me some direction, we could collaboratively
 start
   hacking on it.
  
   Thanks,
   Om
  
  
   
Mike
   
   
On Wed, May 27, 2015 at 12:52 PM, Michael Schmalle 
teotigraphix...@gmail.com wrote:
   


 On Wed, May 27, 2015 at 12:37 PM, Alex Harui aha...@adobe.com
  wrote:



 On 5/27/15, 9:02 AM, Michael Schmalle 
 teotigraphix...@gmail.com
 wrote:

 
 In the FlexJS and FalconJX categories there is not much and just
assuming
 since your are basically the main committer on the compiler right
   now,
 that
 you just fix stuff and don't enter issues.

 Yep.  Although if more folks are going to work on stuff I’ll be
 more
 motivated to file tickets.

 
 That said, is there anything that you know about with the
 compiler
 FalconJX/FlexJS that I could work on to get my feet wet? Or are
  your
 TODOs
 more based on the fact you know exactly what is going on there
 and
  I
 can't
 do much until I fully understand the tool chain of FlexJS and
 GCC?

 I don’t think I have a list in my head that will help you learn
 the
   tool
 chain.  I want to suppress the GCC warnings, but I don’t think
 that
   will
 teach you much.  I want to explore Josh’s idea of FalconJX with a
   native
 HTML swc so we can write all of our JS code in AS.  If you want to
   work
on
 that, that would be awesome, but it may not teach you how the
 FlexJS
 workflow is supposed to go.



 Ok, that answered my question.

 Well, when I said teach I just meant getting into the code.
  Really, I
 know the base part of the compiler and the walker/visitor framework
   well
 ;-), so getting FalconJX to use an HTML.swc would be exactly what I
  am
 looking for to do.

 This is where you can keep doing what you are good at and I can
 work
  on
 what I am good at(code rendering).

 Can I ask you to start another thread and outline what you see
 needs
  to
be
 done to accomplish what is in your mind dealing with FalconJX and
 the
 HTML.swc? If you can just brainstorm, then I can ask you questions
 to
fill
 in the gaps that I am not seeing.




 Peter and I are working on our own apps that use FlexJS.  It
 rarely
works
 like we’d like it to, then we fix the compiler or FlexJS code
 until
  it
 does.  It might be best for you to simply start on a test app that
   uses
 your NativeExtension and try to get it working in 

Re: [FalconJX FlexJS] JIRA issues and helping with the compiler

2015-05-27 Thread Michael Schmalle
Kewl,

I figured as much but I don't have the experience with HTML/SVG I would be
learning through this.

Well you will have to treat me like a kid but I am willing to help you out
on this graphics stuff.

Mike

On Wed, May 27, 2015 at 2:17 PM, OmPrakash Muppirala bigosma...@gmail.com
wrote:

 On Wed, May 27, 2015 at 11:06 AM, Michael Schmalle 
 teotigraphix...@gmail.com wrote:

  Ok, I will have these screenshots then. Must I didn't know non logged in
  people couldn't view images on KVR.
 
  http://snag.gy/ajFEZ.jpg
 
  http://snag.gy/vCJen.jpg
 
  http://snag.gy/785HX.jpg
 
 
 This helps, thanks!

 From these screenshots, FlexJS can handle most things - from a rendering
 point of view.  It just looks like a combination of primitives (rect,
 ellipse, line, linear gradients, etc.)  Which means that you just write
 MXML/AS3 code and most of the Javascript (+SVG) code can be generated.

 The things missing are RadialGradients and some filters like DropShadow and
 Glow.  I don't think it would be too hard to add this.

 There might be more issues, but I guess they will become more obvious as we
 start building this out.  But, this looks like a very good usecase for
 skinnable components.

 Thanks,
 Om


  Mike
 
  On Wed, May 27, 2015 at 2:01 PM, OmPrakash Muppirala 
 bigosma...@gmail.com
  
  wrote:
 
   On Wed, May 27, 2015 at 10:58 AM, Michael Schmalle 
   teotigraphix...@gmail.com wrote:
  
@Om
   
Checkout page 1 and 2 of this thread. I am using OSC and AIR/Feathers
  to
control Bitwig(Audio DAW).
   
http://www.kvraudio.com/forum/viewtopic.php?f=259t=435857
   
The above is the same type of stuff I am drawing in my Caustic apps.
  Let
   me
know if that makes sense to you.
   
   
   I am unable to see any images displayed on that page.  It says:
   You do not have the required permissions to view the files attached to
   this post.
  
   Thanks,
   Om
  
  
Mike
   
   
On Wed, May 27, 2015 at 1:52 PM, OmPrakash Muppirala 
   bigosma...@gmail.com

wrote:
   
 On Wed, May 27, 2015 at 10:46 AM, Michael Schmalle 
 teotigraphix...@gmail.com wrote:

  Alex,
 
  Thinking about this more.
 
  I have 1 or 2 apps that are more administrative such as a
 library
  manager, MIDI importer, metadata manager for the Caustic files
 that
   are
 on
  the device.
 
  Seeing that HTML is more text/editor centric, I could see myself
   trying
 to
  get the native extension working sooner than later and using the
  framework/components to build these simpler apps. This might
  actually
be
 a
  good thing since those apps are more secondary to the main ones.
 
  The other apps are quite graphic intensive and I don't know
 exactly
   how
  easy they will be to create in straight HTML. I am thinking more
  webgl/feathers like implementation will be needed for the
 graphics.
 Albeit,
  I am still ignorant to what kind of graphics I could do on
 Android
   with
  either the embedded web view Cordova provides or some other
 option.
 
  As you can see I am REALLY trying to find a reason to set aside a
   good
  amount of time to get this project moving on the low level.
 
  @Om this is why I was interested in what you were thinking about
FXG/SVG
  and having components use them. It would be easier to use that
 then
  Bitmaps, maybe, I guess I use straight Bitmaps with Feathers
  so I
 don't
  know. :)
 

 Do you have an example of what kind of stuff you want to draw for
  your
 apps?  If you can give me some direction, we could collaboratively
   start
 hacking on it.

 Thanks,
 Om


 
  Mike
 
 
  On Wed, May 27, 2015 at 12:52 PM, Michael Schmalle 
  teotigraphix...@gmail.com wrote:
 
  
  
   On Wed, May 27, 2015 at 12:37 PM, Alex Harui aha...@adobe.com
 
wrote:
  
  
  
   On 5/27/15, 9:02 AM, Michael Schmalle 
   teotigraphix...@gmail.com
   wrote:
  
   
   In the FlexJS and FalconJX categories there is not much and
  just
  assuming
   since your are basically the main committer on the compiler
  right
 now,
   that
   you just fix stuff and don't enter issues.
  
   Yep.  Although if more folks are going to work on stuff I’ll
 be
   more
   motivated to file tickets.
  
   
   That said, is there anything that you know about with the
   compiler
   FalconJX/FlexJS that I could work on to get my feet wet? Or
 are
your
   TODOs
   more based on the fact you know exactly what is going on
 there
   and
I
   can't
   do much until I fully understand the tool chain of FlexJS and
   GCC?
  
   I don’t think I have a list in my head that will help you
 learn
   the
 tool
   chain.  I want to suppress the GCC warnings, but I don’t think
   that
 

[FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Alex Harui
New thread:



On 5/27/15, 9:52 AM, Michael Schmalle teotigraphix...@gmail.com wrote:

Well, when I said teach I just meant getting into the code. Really, I
know the base part of the compiler and the walker/visitor framework well
;-), so getting FalconJX to use an HTML.swc would be exactly what I am
looking for to do.

This is where you can keep doing what you are good at and I can work on
what I am good at(code rendering).

Can I ask you to start another thread and outline what you see needs to be
done to accomplish what is in your mind dealing with FalconJX and the
HTML.swc? If you can just brainstorm, then I can ask you questions to fill
in the gaps that I am not seeing.


As I see it, FalconJX should just be able to grab some SWCs and
cross-compile some AS based on definitions in the SWCs.  Right now we feed
it playerglobal/airglobal and FlexJS swcs with UIBase widgets, but in
theory, as Josh suggests we should be able to replace those SWCs with just:

jsglobal.swc:
Object
Number
String
what else?

HTML.swc:
Window
Event
UIEvent
MouseEvent
HTMLElement
etc.

Then folks should be able to test drive FalconJX by running some AS
through it to get any JS they normally use in their web apps, and we
should be able to stop writing any JS at all.  All files in flex-asjs that
are currently .JS files should be able to be written in AS and
cross-compiled with only those two SWCs.  I can tell you that it would
probably have saved us much time if we had this already.  It is painful
doing .JS code simply in the writing of ‘this.’ and ‘prototype’.

Anyway, that’s as far as I’ve thought on this subject.  As you said in
another thread this is where we’d have to prove there are no hard-coded
dependencies in Falcon/FalconJX on playerglobal/airglobal.

OK, one more thought: there may be reverse-engineering issues about
replacing playerglobal/airglobal, but I was hoping we might find some
Tamarin code laying around that has what we’d start with for jsglobal.swc.

-Alex




Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com wrote:

 New thread:



 On 5/27/15, 9:52 AM, Michael Schmalle teotigraphix...@gmail.com wrote:

 Well, when I said teach I just meant getting into the code. Really, I
 know the base part of the compiler and the walker/visitor framework well
 ;-), so getting FalconJX to use an HTML.swc would be exactly what I am
 looking for to do.
 
 This is where you can keep doing what you are good at and I can work on
 what I am good at(code rendering).
 
 Can I ask you to start another thread and outline what you see needs to be
 done to accomplish what is in your mind dealing with FalconJX and the
 HTML.swc? If you can just brainstorm, then I can ask you questions to fill
 in the gaps that I am not seeing.
 

 As I see it, FalconJX should just be able to grab some SWCs and
 cross-compile some AS based on definitions in the SWCs.  Right now we feed
 it playerglobal/airglobal and FlexJS swcs with UIBase widgets, but in
 theory, as Josh suggests we should be able to replace those SWCs with just:

 jsglobal.swc:
 Object
 Number
 String
 what else?

 HTML.swc:
 Window
 Event
 UIEvent
 MouseEvent
 HTMLElement
 etc.


See for HTML lib, Roland used WebIDL parser to create it;

https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib

The builtin.swc we made;

https://github.com/RandoriAS/randori-tools/tree/develop/RandoriBuiltin

Read the README, does this violate anything?



 Then folks should be able to test drive FalconJX by running some AS
 through it to get any JS they normally use in their web apps, and we
 should be able to stop writing any JS at all.  All files in flex-asjs that
 are currently .JS files should be able to be written in AS and
 cross-compiled with only those two SWCs.  I can tell you that it would
 probably have saved us much time if we had this already.  It is painful
 doing .JS code simply in the writing of ‘this.’ and ‘prototype’.


Yeah, not to mention compile time checking. :)




 Anyway, that’s as far as I’ve thought on this subject.  As you said in
 another thread this is where we’d have to prove there are no hard-coded
 dependencies in Falcon/FalconJX on playerglobal/airglobal.



See the above links and give feedback on what you think.



 OK, one more thought: there may be reverse-engineering issues about
 replacing playerglobal/airglobal, but I was hoping we might find some
 Tamarin code laying around that has what we’d start with for jsglobal.swc.


I think this is what Roland actually did, I know he found it some where(how
to build the builtin.swc Randori used).


Question; So the code style, you said we might use the FlexJS emitter but I
don't see how that is possible since it's not a vanilla emitter.

It seems to me I need to know the exact code style that a vanilla
transpiler will create and I can make that emitter as another backend, what
do you think?

@Josj you have any thoughts? I am ready to start writing it. :)

Mike




 -Alex





Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
 OK, one more thought: there may be reverse-engineering issues about
replacing playerglobal/airglobal, but I was hoping we might find some
Tamarin code laying around that has what we’d start with for jsglobal.swc.

Hmmm, yeah I re-read the Builtin, I really thought Roland did use code from
an opensource flash player impl. Actually if my memory serves me, if that
is not what is going on here, than that was the problem with Object and
Roland then found a workaround.

Mike



On Wed, May 27, 2015 at 3:02 PM, Michael Schmalle teotigraphix...@gmail.com
 wrote:



 On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com wrote:

 New thread:



 On 5/27/15, 9:52 AM, Michael Schmalle teotigraphix...@gmail.com
 wrote:

 Well, when I said teach I just meant getting into the code. Really, I
 know the base part of the compiler and the walker/visitor framework well
 ;-), so getting FalconJX to use an HTML.swc would be exactly what I am
 looking for to do.
 
 This is where you can keep doing what you are good at and I can work on
 what I am good at(code rendering).
 
 Can I ask you to start another thread and outline what you see needs to
 be
 done to accomplish what is in your mind dealing with FalconJX and the
 HTML.swc? If you can just brainstorm, then I can ask you questions to
 fill
 in the gaps that I am not seeing.
 

 As I see it, FalconJX should just be able to grab some SWCs and
 cross-compile some AS based on definitions in the SWCs.  Right now we feed
 it playerglobal/airglobal and FlexJS swcs with UIBase widgets, but in
 theory, as Josh suggests we should be able to replace those SWCs with
 just:

 jsglobal.swc:
 Object
 Number
 String
 what else?

 HTML.swc:
 Window
 Event
 UIEvent
 MouseEvent
 HTMLElement
 etc.


 See for HTML lib, Roland used WebIDL parser to create it;

 https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib

 The builtin.swc we made;

 https://github.com/RandoriAS/randori-tools/tree/develop/RandoriBuiltin

 Read the README, does this violate anything?



 Then folks should be able to test drive FalconJX by running some AS
 through it to get any JS they normally use in their web apps, and we
 should be able to stop writing any JS at all.  All files in flex-asjs that
 are currently .JS files should be able to be written in AS and
 cross-compiled with only those two SWCs.  I can tell you that it would
 probably have saved us much time if we had this already.  It is painful
 doing .JS code simply in the writing of ‘this.’ and ‘prototype’.


 Yeah, not to mention compile time checking. :)




 Anyway, that’s as far as I’ve thought on this subject.  As you said in
 another thread this is where we’d have to prove there are no hard-coded
 dependencies in Falcon/FalconJX on playerglobal/airglobal.



 See the above links and give feedback on what you think.



 OK, one more thought: there may be reverse-engineering issues about
 replacing playerglobal/airglobal, but I was hoping we might find some
 Tamarin code laying around that has what we’d start with for jsglobal.swc.


 I think this is what Roland actually did, I know he found it some
 where(how to build the builtin.swc Randori used).


 Question; So the code style, you said we might use the FlexJS emitter but
 I don't see how that is possible since it's not a vanilla emitter.

 It seems to me I need to know the exact code style that a vanilla
 transpiler will create and I can make that emitter as another backend, what
 do you think?

 @Josj you have any thoughts? I am ready to start writing it. :)

 Mike




 -Alex






Re: [FalconJX FlexJS] JIRA issues and helping with the compiler

2015-05-27 Thread Michael Schmalle
On Wed, May 27, 2015 at 12:37 PM, Alex Harui aha...@adobe.com wrote:



 On 5/27/15, 9:02 AM, Michael Schmalle teotigraphix...@gmail.com wrote:

 
 In the FlexJS and FalconJX categories there is not much and just assuming
 since your are basically the main committer on the compiler right now,
 that
 you just fix stuff and don't enter issues.

 Yep.  Although if more folks are going to work on stuff I’ll be more
 motivated to file tickets.

 
 That said, is there anything that you know about with the compiler
 FalconJX/FlexJS that I could work on to get my feet wet? Or are your TODOs
 more based on the fact you know exactly what is going on there and I can't
 do much until I fully understand the tool chain of FlexJS and GCC?

 I don’t think I have a list in my head that will help you learn the tool
 chain.  I want to suppress the GCC warnings, but I don’t think that will
 teach you much.  I want to explore Josh’s idea of FalconJX with a native
 HTML swc so we can write all of our JS code in AS.  If you want to work on
 that, that would be awesome, but it may not teach you how the FlexJS
 workflow is supposed to go.



Ok, that answered my question.

Well, when I said teach I just meant getting into the code. Really, I
know the base part of the compiler and the walker/visitor framework well
;-), so getting FalconJX to use an HTML.swc would be exactly what I am
looking for to do.

This is where you can keep doing what you are good at and I can work on
what I am good at(code rendering).

Can I ask you to start another thread and outline what you see needs to be
done to accomplish what is in your mind dealing with FalconJX and the
HTML.swc? If you can just brainstorm, then I can ask you questions to fill
in the gaps that I am not seeing.




 Peter and I are working on our own apps that use FlexJS.  It rarely works
 like we’d like it to, then we fix the compiler or FlexJS code until it
 does.  It might be best for you to simply start on a test app that uses
 your NativeExtension and try to get it working in Cordova.  Or, if that
 feels like too big a bite, I’ll push the app I’m working on and you can
 work on it as well if you find it interesting.



This would be beneficial for me as well and probably others. I could see
myself learning from something you are actively working on and looking at
your commits.

Right now I have a September target for about 4-5 Feathers mobile Android
apps I am working on to release based on Caustic audio engine, that is my
income. :) So the Crodova experiment I see coming in the Fall/Winter when I
am more sound in what's going on and the component framework is a bit more
mature.




 As always, I’m glad you have your and Fred’s and everyone else’s help.



Yeah, well if my apps take off, which they should since I am working with
the dev of Caustic, I will have a 100% excuse to keep working on this
project for the foreseeable future. As you can see, with apps selling using
native extensions and AIR, my motivation to get them to work in
HTML/Cordova increases 10 fold because they are already successful on one
platform. This is a good thing.

Mike


 -Alex




Re: [FalconJX FlexJS] JIRA issues and helping with the compiler

2015-05-27 Thread Alex Harui


On 5/27/15, 9:02 AM, Michael Schmalle teotigraphix...@gmail.com wrote:

Alex, mainly aimed at you. I was skimming the JIRA in FlexJS and have a
couple questions.

What is the difference between;

Apache ASJS 1.0
https://issues.apache.org/jira/browse/FLEX/fixforversion/12324434
Apache FlexJS 1.0
https://issues.apache.org/jira/browse/FLEX/fixforversion/12324435

Is the ASJS the first thing you called it then FlexJS? If so, should we
remove that category? I was confused for a day or two while looking
around.

I don’t remember making Apache ASJS, but there are no JIRA tickets
associated with it so I just went and deleted it.  Thanks for noticing.


In the FlexJS and FalconJX categories there is not much and just assuming
since your are basically the main committer on the compiler right now,
that
you just fix stuff and don't enter issues.

Yep.  Although if more folks are going to work on stuff I’ll be more
motivated to file tickets.


That said, is there anything that you know about with the compiler
FalconJX/FlexJS that I could work on to get my feet wet? Or are your TODOs
more based on the fact you know exactly what is going on there and I can't
do much until I fully understand the tool chain of FlexJS and GCC?

I don’t think I have a list in my head that will help you learn the tool
chain.  I want to suppress the GCC warnings, but I don’t think that will
teach you much.  I want to explore Josh’s idea of FalconJX with a native
HTML swc so we can write all of our JS code in AS.  If you want to work on
that, that would be awesome, but it may not teach you how the FlexJS
workflow is supposed to go.

Peter and I are working on our own apps that use FlexJS.  It rarely works
like we’d like it to, then we fix the compiler or FlexJS code until it
does.  It might be best for you to simply start on a test app that uses
your NativeExtension and try to get it working in Cordova.  Or, if that
feels like too big a bite, I’ll push the app I’m working on and you can
work on it as well if you find it interesting.

As always, I’m glad you have your and Fred’s and everyone else’s help.
-Alex



Re: [FalconJX FlexJS] JIRA issues and helping with the compiler

2015-05-27 Thread Michael Schmalle
Alex,

Thinking about this more.

I have 1 or 2 apps that are more administrative such as a library
manager, MIDI importer, metadata manager for the Caustic files that are on
the device.

Seeing that HTML is more text/editor centric, I could see myself trying to
get the native extension working sooner than later and using the
framework/components to build these simpler apps. This might actually be a
good thing since those apps are more secondary to the main ones.

The other apps are quite graphic intensive and I don't know exactly how
easy they will be to create in straight HTML. I am thinking more
webgl/feathers like implementation will be needed for the graphics. Albeit,
I am still ignorant to what kind of graphics I could do on Android with
either the embedded web view Cordova provides or some other option.

As you can see I am REALLY trying to find a reason to set aside a good
amount of time to get this project moving on the low level.

@Om this is why I was interested in what you were thinking about FXG/SVG
and having components use them. It would be easier to use that then
Bitmaps, maybe, I guess I use straight Bitmaps with Feathers so I don't
know. :)

Mike


On Wed, May 27, 2015 at 12:52 PM, Michael Schmalle 
teotigraphix...@gmail.com wrote:



 On Wed, May 27, 2015 at 12:37 PM, Alex Harui aha...@adobe.com wrote:



 On 5/27/15, 9:02 AM, Michael Schmalle teotigraphix...@gmail.com
 wrote:

 
 In the FlexJS and FalconJX categories there is not much and just assuming
 since your are basically the main committer on the compiler right now,
 that
 you just fix stuff and don't enter issues.

 Yep.  Although if more folks are going to work on stuff I’ll be more
 motivated to file tickets.

 
 That said, is there anything that you know about with the compiler
 FalconJX/FlexJS that I could work on to get my feet wet? Or are your
 TODOs
 more based on the fact you know exactly what is going on there and I
 can't
 do much until I fully understand the tool chain of FlexJS and GCC?

 I don’t think I have a list in my head that will help you learn the tool
 chain.  I want to suppress the GCC warnings, but I don’t think that will
 teach you much.  I want to explore Josh’s idea of FalconJX with a native
 HTML swc so we can write all of our JS code in AS.  If you want to work on
 that, that would be awesome, but it may not teach you how the FlexJS
 workflow is supposed to go.



 Ok, that answered my question.

 Well, when I said teach I just meant getting into the code. Really, I
 know the base part of the compiler and the walker/visitor framework well
 ;-), so getting FalconJX to use an HTML.swc would be exactly what I am
 looking for to do.

 This is where you can keep doing what you are good at and I can work on
 what I am good at(code rendering).

 Can I ask you to start another thread and outline what you see needs to be
 done to accomplish what is in your mind dealing with FalconJX and the
 HTML.swc? If you can just brainstorm, then I can ask you questions to fill
 in the gaps that I am not seeing.




 Peter and I are working on our own apps that use FlexJS.  It rarely works
 like we’d like it to, then we fix the compiler or FlexJS code until it
 does.  It might be best for you to simply start on a test app that uses
 your NativeExtension and try to get it working in Cordova.  Or, if that
 feels like too big a bite, I’ll push the app I’m working on and you can
 work on it as well if you find it interesting.



 This would be beneficial for me as well and probably others. I could see
 myself learning from something you are actively working on and looking at
 your commits.

 Right now I have a September target for about 4-5 Feathers mobile Android
 apps I am working on to release based on Caustic audio engine, that is my
 income. :) So the Crodova experiment I see coming in the Fall/Winter when I
 am more sound in what's going on and the component framework is a bit more
 mature.




 As always, I’m glad you have your and Fred’s and everyone else’s help.



 Yeah, well if my apps take off, which they should since I am working with
 the dev of Caustic, I will have a 100% excuse to keep working on this
 project for the foreseeable future. As you can see, with apps selling using
 native extensions and AIR, my motivation to get them to work in
 HTML/Cordova increases 10 fold because they are already successful on one
 platform. This is a good thing.

 Mike


 -Alex





Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
On Wed, May 27, 2015 at 4:02 PM, Alex Harui aha...@adobe.com wrote:


 This is where, for Apache projects, it gets tricky/messy.  Tamarin code is
 MPL (or xGPL) and Apache doesn’t like have source code dependencies on
 those licenses.  You can have a dependency on compiled MPL code so if
 there was a swc in a stable place that contained those compiled Tamarin
 .as files then we’d be good to go.  Otherwise, we may need to get an
 exception or get Adobe to re-license.  Not sure how hard that will be.
 And just linking to Randori may be seen as a valid way to get around it
 either since the Randori folks are also Flex committers.



Ok, well I emailed Roland and asked if he could enlighten me it's been so
long, I feel dumb when talking about Randori.

We did not have playerglobal.swc and used FalconJX so it has to work and if
the wheel has already been created, I see no reason in reinventing it, we
would just use built, could I for instance as a separate entity fork that
repo to mine and then I maintain the code and compile it if wee need to,
then get the swc from my repo?




 HTML.swc:
  Window
  Event
  UIEvent
  MouseEvent
  HTMLElement
  etc.
 
 
  See for HTML lib, Roland used WebIDL parser to create it;
 
  https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib

 I couldn’t quickly find the rules around IDL and WebIDL Parser to figure
 out if we can do the same.  Can you point us to links and licenses?




I need Roland's advice here, I had nothing to do with this part of the
project.





 
 
  Question; So the code style, you said we might use the FlexJS emitter
 but
  I don't see how that is possible since it's not a vanilla emitter.
 
  It seems to me I need to know the exact code style that a vanilla
  transpiler will create and I can make that emitter as another backend,
 what
  do you think?
 
  @Josj you have any thoughts? I am ready to start writing it. :)

 I’m not clear what isn’t vanilla about the current emitter if you are
 writing code against these two SWCs.  I don’t know how much Google Closure
 Library code will actually get sucked in.  But it seems reasonable to at
 least start with the FlexJS emitter then figure out what needs to change.



Hmm, ok maybe it's me being numb, I guess I am confusing the MXMLEmitter
with the JSEmitter. and what it's doing.

I swear I looked at the JSEmitter and it had a bunch of GCC stuff in it and
all the comments and such. If I was to maintain a straight transpiler I
would want it to be as clean and extensible as possible.

On that note; In the Randori emitter I used about 8 class compositions in
the JS emitter whcih decoupled a huge amount of code. I think we could do
that with the current GFLexJS emitter and share 1/2 to 2/3 of the code base
that exists right now.

What do you think?

Mike




 -Alex




Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Alex Harui


On 5/27/15, 12:05 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

 OK, one more thought: there may be reverse-engineering issues about
replacing playerglobal/airglobal, but I was hoping we might find some
Tamarin code laying around that has what we’d start with for jsglobal.swc.

Hmmm, yeah I re-read the Builtin, I really thought Roland did use code
from
an opensource flash player impl. Actually if my memory serves me, if that
is not what is going on here, than that was the problem with Object and
Roland then found a workaround.

This is where, for Apache projects, it gets tricky/messy.  Tamarin code is
MPL (or xGPL) and Apache doesn’t like have source code dependencies on
those licenses.  You can have a dependency on compiled MPL code so if
there was a swc in a stable place that contained those compiled Tamarin
.as files then we’d be good to go.  Otherwise, we may need to get an
exception or get Adobe to re-license.  Not sure how hard that will be.
And just linking to Randori may be seen as a valid way to get around it
either since the Randori folks are also Flex committers.

HTML.swc:
 Window
 Event
 UIEvent
 MouseEvent
 HTMLElement
 etc.


 See for HTML lib, Roland used WebIDL parser to create it;

 https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib

I couldn’t quickly find the rules around IDL and WebIDL Parser to figure
out if we can do the same.  Can you point us to links and licenses?



 Question; So the code style, you said we might use the FlexJS emitter
but
 I don't see how that is possible since it's not a vanilla emitter.

 It seems to me I need to know the exact code style that a vanilla
 transpiler will create and I can make that emitter as another backend,
what
 do you think?

 @Josj you have any thoughts? I am ready to start writing it. :)

I’m not clear what isn’t vanilla about the current emitter if you are
writing code against these two SWCs.  I don’t know how much Google Closure
Library code will actually get sucked in.  But it seems reasonable to at
least start with the FlexJS emitter then figure out what needs to change.

-Alex



Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
Ok,

I am a doer... :) Since this is all POC right now and I am up to learn some
JS, I will use this as a format. I have done this JSEmitter 2 times now so
the 3rd isn't going to be that hard, maybe the charm for me to.

Note, most of the expressions and statements are already done. As noted,
inheritance, scope and set/get always are the pains but if I have a target
output protocol like TypeScript's output, why not emulate it.

Alex, I know what you are thinking... Don't. :) My gut feeling is, if I
start from the ground up and have NO dependencies on anything, I will do
this twice as fast. I am very good at refactoring so once I have tests
working on the generated .js, we can see what could be abstracted to and
from this emitter and FlexJS.

I really think for my own sanity, I need to start in isolation and not get
in FlexJS's way either, that is another pro for me, no commit conflicts,
nothing of that nature.

Thoughts Josh, Alex?

Mike






On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala joshtynj...@gmail.com wrote:

 When I played with TypeScript, I loved that I could subclass CreateJS
 prototypes very easily. As long as something like that is possible from
 ActionScript (assuming I could provide a SWC or something for CreateJS or
 whichever library I want to use), I don't have too strong of an opinion on
 how the final JavaScript looks.

 I'll just say that I like the clean code that the TypeScript compiler
 outputs. To me, it looked pretty much like what I might write manually, if
 I were using vanilla JavaScript. Looking at the TypeScript playground, the
 Inheritance example and the Modules example both look very nice.

 http://www.typescriptlang.org/Playground

 - Josh

 On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
 teotigraphix...@gmail.com wrote:

  On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com wrote:
 
   New thread:
  
  
  
   On 5/27/15, 9:52 AM, Michael Schmalle teotigraphix...@gmail.com
  wrote:
  
   Well, when I said teach I just meant getting into the code. Really,
 I
   know the base part of the compiler and the walker/visitor framework
 well
   ;-), so getting FalconJX to use an HTML.swc would be exactly what I am
   looking for to do.
   
   This is where you can keep doing what you are good at and I can work
 on
   what I am good at(code rendering).
   
   Can I ask you to start another thread and outline what you see needs
 to
  be
   done to accomplish what is in your mind dealing with FalconJX and the
   HTML.swc? If you can just brainstorm, then I can ask you questions to
  fill
   in the gaps that I am not seeing.
   
  
   As I see it, FalconJX should just be able to grab some SWCs and
   cross-compile some AS based on definitions in the SWCs.  Right now we
  feed
   it playerglobal/airglobal and FlexJS swcs with UIBase widgets, but in
   theory, as Josh suggests we should be able to replace those SWCs with
  just:
  
   jsglobal.swc:
   Object
   Number
   String
   what else?
  
   HTML.swc:
   Window
   Event
   UIEvent
   MouseEvent
   HTMLElement
   etc.
  
  
  See for HTML lib, Roland used WebIDL parser to create it;
 
  https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib
 
  The builtin.swc we made;
 
  https://github.com/RandoriAS/randori-tools/tree/develop/RandoriBuiltin
 
  Read the README, does this violate anything?
 
 
 
   Then folks should be able to test drive FalconJX by running some AS
   through it to get any JS they normally use in their web apps, and we
   should be able to stop writing any JS at all.  All files in flex-asjs
  that
   are currently .JS files should be able to be written in AS and
   cross-compiled with only those two SWCs.  I can tell you that it would
   probably have saved us much time if we had this already.  It is painful
   doing .JS code simply in the writing of ‘this.’ and ‘prototype’.
  
 
  Yeah, not to mention compile time checking. :)
 
 
 
  
   Anyway, that’s as far as I’ve thought on this subject.  As you said in
   another thread this is where we’d have to prove there are no hard-coded
   dependencies in Falcon/FalconJX on playerglobal/airglobal.
  
 
 
  See the above links and give feedback on what you think.
 
 
  
   OK, one more thought: there may be reverse-engineering issues about
   replacing playerglobal/airglobal, but I was hoping we might find some
   Tamarin code laying around that has what we’d start with for
  jsglobal.swc.
  
 
  I think this is what Roland actually did, I know he found it some
 where(how
  to build the builtin.swc Randori used).
 
 
  Question; So the code style, you said we might use the FlexJS emitter
 but I
  don't see how that is possible since it's not a vanilla emitter.
 
  It seems to me I need to know the exact code style that a vanilla
  transpiler will create and I can make that emitter as another backend,
 what
  do you think?
 
  @Josj you have any thoughts? I am ready to start writing it. :)
 
  Mike
 
 
 
  
   -Alex
  
  
  
 



Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Josh Tynjala
When I played with TypeScript, I loved that I could subclass CreateJS
prototypes very easily. As long as something like that is possible from
ActionScript (assuming I could provide a SWC or something for CreateJS or
whichever library I want to use), I don't have too strong of an opinion on
how the final JavaScript looks.

I'll just say that I like the clean code that the TypeScript compiler
outputs. To me, it looked pretty much like what I might write manually, if
I were using vanilla JavaScript. Looking at the TypeScript playground, the
Inheritance example and the Modules example both look very nice.

http://www.typescriptlang.org/Playground

- Josh

On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
teotigraphix...@gmail.com wrote:

 On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com wrote:

  New thread:
 
 
 
  On 5/27/15, 9:52 AM, Michael Schmalle teotigraphix...@gmail.com
 wrote:
 
  Well, when I said teach I just meant getting into the code. Really, I
  know the base part of the compiler and the walker/visitor framework well
  ;-), so getting FalconJX to use an HTML.swc would be exactly what I am
  looking for to do.
  
  This is where you can keep doing what you are good at and I can work on
  what I am good at(code rendering).
  
  Can I ask you to start another thread and outline what you see needs to
 be
  done to accomplish what is in your mind dealing with FalconJX and the
  HTML.swc? If you can just brainstorm, then I can ask you questions to
 fill
  in the gaps that I am not seeing.
  
 
  As I see it, FalconJX should just be able to grab some SWCs and
  cross-compile some AS based on definitions in the SWCs.  Right now we
 feed
  it playerglobal/airglobal and FlexJS swcs with UIBase widgets, but in
  theory, as Josh suggests we should be able to replace those SWCs with
 just:
 
  jsglobal.swc:
  Object
  Number
  String
  what else?
 
  HTML.swc:
  Window
  Event
  UIEvent
  MouseEvent
  HTMLElement
  etc.
 
 
 See for HTML lib, Roland used WebIDL parser to create it;

 https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib

 The builtin.swc we made;

 https://github.com/RandoriAS/randori-tools/tree/develop/RandoriBuiltin

 Read the README, does this violate anything?



  Then folks should be able to test drive FalconJX by running some AS
  through it to get any JS they normally use in their web apps, and we
  should be able to stop writing any JS at all.  All files in flex-asjs
 that
  are currently .JS files should be able to be written in AS and
  cross-compiled with only those two SWCs.  I can tell you that it would
  probably have saved us much time if we had this already.  It is painful
  doing .JS code simply in the writing of ‘this.’ and ‘prototype’.
 

 Yeah, not to mention compile time checking. :)



 
  Anyway, that’s as far as I’ve thought on this subject.  As you said in
  another thread this is where we’d have to prove there are no hard-coded
  dependencies in Falcon/FalconJX on playerglobal/airglobal.
 


 See the above links and give feedback on what you think.


 
  OK, one more thought: there may be reverse-engineering issues about
  replacing playerglobal/airglobal, but I was hoping we might find some
  Tamarin code laying around that has what we’d start with for
 jsglobal.swc.
 

 I think this is what Roland actually did, I know he found it some where(how
 to build the builtin.swc Randori used).


 Question; So the code style, you said we might use the FlexJS emitter but I
 don't see how that is possible since it's not a vanilla emitter.

 It seems to me I need to know the exact code style that a vanilla
 transpiler will create and I can make that emitter as another backend, what
 do you think?

 @Josj you have any thoughts? I am ready to start writing it. :)

 Mike



 
  -Alex
 
 
 



Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
Ok Update.

I have been researching TypeScript and it's output, this is what I am
doing. For some reason this just makes sense to me and the are 100's of
examples I can use to test the code generation against.

Josh, I would say if you want to start experimenting with your framework,
use what you just showed me as a base and I can meet you in the middle,
then we can figure our the quirks together.

I will/am start/ing working on this ASAP.

Mike

On Wed, May 27, 2015 at 4:54 PM, Michael Schmalle teotigraphix...@gmail.com
 wrote:

 Ok,

 I am a doer... :) Since this is all POC right now and I am up to learn
 some JS, I will use this as a format. I have done this JSEmitter 2 times
 now so the 3rd isn't going to be that hard, maybe the charm for me to.

 Note, most of the expressions and statements are already done. As noted,
 inheritance, scope and set/get always are the pains but if I have a target
 output protocol like TypeScript's output, why not emulate it.

 Alex, I know what you are thinking... Don't. :) My gut feeling is, if I
 start from the ground up and have NO dependencies on anything, I will do
 this twice as fast. I am very good at refactoring so once I have tests
 working on the generated .js, we can see what could be abstracted to and
 from this emitter and FlexJS.

 I really think for my own sanity, I need to start in isolation and not get
 in FlexJS's way either, that is another pro for me, no commit conflicts,
 nothing of that nature.

 Thoughts Josh, Alex?

 Mike






 On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala joshtynj...@gmail.com
 wrote:

 When I played with TypeScript, I loved that I could subclass CreateJS
 prototypes very easily. As long as something like that is possible from
 ActionScript (assuming I could provide a SWC or something for CreateJS or
 whichever library I want to use), I don't have too strong of an opinion on
 how the final JavaScript looks.

 I'll just say that I like the clean code that the TypeScript compiler
 outputs. To me, it looked pretty much like what I might write manually, if
 I were using vanilla JavaScript. Looking at the TypeScript playground, the
 Inheritance example and the Modules example both look very nice.

 http://www.typescriptlang.org/Playground

 - Josh

 On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
 teotigraphix...@gmail.com wrote:

  On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com wrote:
 
   New thread:
  
  
  
   On 5/27/15, 9:52 AM, Michael Schmalle teotigraphix...@gmail.com
  wrote:
  
   Well, when I said teach I just meant getting into the code.
 Really, I
   know the base part of the compiler and the walker/visitor framework
 well
   ;-), so getting FalconJX to use an HTML.swc would be exactly what I
 am
   looking for to do.
   
   This is where you can keep doing what you are good at and I can work
 on
   what I am good at(code rendering).
   
   Can I ask you to start another thread and outline what you see needs
 to
  be
   done to accomplish what is in your mind dealing with FalconJX and the
   HTML.swc? If you can just brainstorm, then I can ask you questions to
  fill
   in the gaps that I am not seeing.
   
  
   As I see it, FalconJX should just be able to grab some SWCs and
   cross-compile some AS based on definitions in the SWCs.  Right now we
  feed
   it playerglobal/airglobal and FlexJS swcs with UIBase widgets, but in
   theory, as Josh suggests we should be able to replace those SWCs with
  just:
  
   jsglobal.swc:
   Object
   Number
   String
   what else?
  
   HTML.swc:
   Window
   Event
   UIEvent
   MouseEvent
   HTMLElement
   etc.
  
  
  See for HTML lib, Roland used WebIDL parser to create it;
 
  https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib
 
  The builtin.swc we made;
 
  https://github.com/RandoriAS/randori-tools/tree/develop/RandoriBuiltin
 
  Read the README, does this violate anything?
 
 
 
   Then folks should be able to test drive FalconJX by running some AS
   through it to get any JS they normally use in their web apps, and we
   should be able to stop writing any JS at all.  All files in flex-asjs
  that
   are currently .JS files should be able to be written in AS and
   cross-compiled with only those two SWCs.  I can tell you that it would
   probably have saved us much time if we had this already.  It is
 painful
   doing .JS code simply in the writing of ‘this.’ and ‘prototype’.
  
 
  Yeah, not to mention compile time checking. :)
 
 
 
  
   Anyway, that’s as far as I’ve thought on this subject.  As you said in
   another thread this is where we’d have to prove there are no
 hard-coded
   dependencies in Falcon/FalconJX on playerglobal/airglobal.
  
 
 
  See the above links and give feedback on what you think.
 
 
  
   OK, one more thought: there may be reverse-engineering issues about
   replacing playerglobal/airglobal, but I was hoping we might find some
   Tamarin code laying around that has what we’d start with for
  jsglobal.swc.
 

Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread João Fernandes
Yes from babel or from traceur but babel output is way cleaner.
On May 28, 2015 00:01, Michael Schmalle teotigraphix...@gmail.com wrote:

 So basically your saying the output of ES5 from Babel?

 Mike

 On Wed, May 27, 2015 at 6:47 PM, Josh Tynjala joshtynj...@gmail.com
 wrote:

  You might also consider looking at the output of Babel. Babel transpiles
  ECMAScript 6 back to older versions of the language that are more widely
  supported today. TypeScript is trying to be a superset of ES6, so it
 should
  be pretty similar.
 
  http://babeljs.io
 
  - Josh
 
  On Wed, May 27, 2015 at 2:23 PM, Michael Schmalle 
  teotigraphix...@gmail.com
   wrote:
 
   Ok Update.
  
   I have been researching TypeScript and it's output, this is what I am
   doing. For some reason this just makes sense to me and the are 100's
 of
   examples I can use to test the code generation against.
  
   Josh, I would say if you want to start experimenting with your
 framework,
   use what you just showed me as a base and I can meet you in the middle,
   then we can figure our the quirks together.
  
   I will/am start/ing working on this ASAP.
  
   Mike
  
   On Wed, May 27, 2015 at 4:54 PM, Michael Schmalle 
   teotigraphix...@gmail.com
wrote:
  
Ok,
   
I am a doer... :) Since this is all POC right now and I am up to
 learn
some JS, I will use this as a format. I have done this JSEmitter 2
  times
now so the 3rd isn't going to be that hard, maybe the charm for me
 to.
   
Note, most of the expressions and statements are already done. As
  noted,
inheritance, scope and set/get always are the pains but if I have a
   target
output protocol like TypeScript's output, why not emulate it.
   
Alex, I know what you are thinking... Don't. :) My gut feeling is,
 if I
start from the ground up and have NO dependencies on anything, I will
  do
this twice as fast. I am very good at refactoring so once I have
 tests
working on the generated .js, we can see what could be abstracted to
  and
from this emitter and FlexJS.
   
I really think for my own sanity, I need to start in isolation and
 not
   get
in FlexJS's way either, that is another pro for me, no commit
  conflicts,
nothing of that nature.
   
Thoughts Josh, Alex?
   
Mike
   
   
   
   
   
   
On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala joshtynj...@gmail.com
 
wrote:
   
When I played with TypeScript, I loved that I could subclass
 CreateJS
prototypes very easily. As long as something like that is possible
  from
ActionScript (assuming I could provide a SWC or something for
 CreateJS
   or
whichever library I want to use), I don't have too strong of an
  opinion
   on
how the final JavaScript looks.
   
I'll just say that I like the clean code that the TypeScript
 compiler
outputs. To me, it looked pretty much like what I might write
  manually,
   if
I were using vanilla JavaScript. Looking at the TypeScript
 playground,
   the
Inheritance example and the Modules example both look very nice.
   
http://www.typescriptlang.org/Playground
   
- Josh
   
On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
teotigraphix...@gmail.com wrote:
   
 On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com
  wrote:

  New thread:
 
 
 
  On 5/27/15, 9:52 AM, Michael Schmalle 
  teotigraphix...@gmail.com
 wrote:
 
  Well, when I said teach I just meant getting into the code.
Really, I
  know the base part of the compiler and the walker/visitor
  framework
well
  ;-), so getting FalconJX to use an HTML.swc would be exactly
  what I
am
  looking for to do.
  
  This is where you can keep doing what you are good at and I can
   work
on
  what I am good at(code rendering).
  
  Can I ask you to start another thread and outline what you see
   needs
to
 be
  done to accomplish what is in your mind dealing with FalconJX
 and
   the
  HTML.swc? If you can just brainstorm, then I can ask you
  questions
   to
 fill
  in the gaps that I am not seeing.
  
 
  As I see it, FalconJX should just be able to grab some SWCs and
  cross-compile some AS based on definitions in the SWCs.  Right
 now
   we
 feed
  it playerglobal/airglobal and FlexJS swcs with UIBase widgets,
 but
   in
  theory, as Josh suggests we should be able to replace those SWCs
   with
 just:
 
  jsglobal.swc:
  Object
  Number
  String
  what else?
 
  HTML.swc:
  Window
  Event
  UIEvent
  MouseEvent
  HTMLElement
  etc.
 
 
 See for HTML lib, Roland used WebIDL parser to create it;


   https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib

 The builtin.swc we made;


   https://github.com/RandoriAS/randori-tools/tree/develop/RandoriBuiltin

 

Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Alex Harui


On 5/27/15, 3:37 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

Well, that is semantics that challenge me, the get_, set_ was kludge and I
hate kludge. :)

I’m not sure of your definition of “kludge” but while
Object.defineProperties is quite cool for translating:

function get foo():int
{
}
function set foo(value:int):void
{
}



The way Object.defineProperties works make it ugly to handle:

override function get foo():int
{
   return super.foo;
}
override function set foo(value:int):void
{
super.foo = value;
}

At least, it seems pretty awful to me but I haven’t looked at what TS
produces.  Maybe they have a better way.  Plus there is more trickery if
the subclass only overrides the getter and not the setter and vice versa.
There is another scenario where the class C extends B and class B extends
A and A has a getter or setter, B does not override it, but C does.


Good luck,
-Alex



Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Alex Harui


On 5/27/15, 3:42 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

On Wed, May 27, 2015 at 6:35 PM, Alex Harui aha...@adobe.com wrote:



 On 5/27/15, 3:32 PM, Michael Schmalle teotigraphix...@gmail.com
wrote:

 BTW, the ONE HELL I had with Randori was this get_ set_ crap, this will
 make is SO much easier. :)

 True, but IMO, there is still hell in calling the superclass’s getter
 and/or setter.


You solved this obviously? So I can look at how you did it. Saves time. :)

Yes, but I realized that it knows that we’re using goog.inherit.
Basically we make an call to a utility function in
org.apache.flex.utils.Language.js

-Alex



Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Josh Tynjala
You might also consider looking at the output of Babel. Babel transpiles
ECMAScript 6 back to older versions of the language that are more widely
supported today. TypeScript is trying to be a superset of ES6, so it should
be pretty similar.

http://babeljs.io

- Josh

On Wed, May 27, 2015 at 2:23 PM, Michael Schmalle teotigraphix...@gmail.com
 wrote:

 Ok Update.

 I have been researching TypeScript and it's output, this is what I am
 doing. For some reason this just makes sense to me and the are 100's of
 examples I can use to test the code generation against.

 Josh, I would say if you want to start experimenting with your framework,
 use what you just showed me as a base and I can meet you in the middle,
 then we can figure our the quirks together.

 I will/am start/ing working on this ASAP.

 Mike

 On Wed, May 27, 2015 at 4:54 PM, Michael Schmalle 
 teotigraphix...@gmail.com
  wrote:

  Ok,
 
  I am a doer... :) Since this is all POC right now and I am up to learn
  some JS, I will use this as a format. I have done this JSEmitter 2 times
  now so the 3rd isn't going to be that hard, maybe the charm for me to.
 
  Note, most of the expressions and statements are already done. As noted,
  inheritance, scope and set/get always are the pains but if I have a
 target
  output protocol like TypeScript's output, why not emulate it.
 
  Alex, I know what you are thinking... Don't. :) My gut feeling is, if I
  start from the ground up and have NO dependencies on anything, I will do
  this twice as fast. I am very good at refactoring so once I have tests
  working on the generated .js, we can see what could be abstracted to and
  from this emitter and FlexJS.
 
  I really think for my own sanity, I need to start in isolation and not
 get
  in FlexJS's way either, that is another pro for me, no commit conflicts,
  nothing of that nature.
 
  Thoughts Josh, Alex?
 
  Mike
 
 
 
 
 
 
  On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala joshtynj...@gmail.com
  wrote:
 
  When I played with TypeScript, I loved that I could subclass CreateJS
  prototypes very easily. As long as something like that is possible from
  ActionScript (assuming I could provide a SWC or something for CreateJS
 or
  whichever library I want to use), I don't have too strong of an opinion
 on
  how the final JavaScript looks.
 
  I'll just say that I like the clean code that the TypeScript compiler
  outputs. To me, it looked pretty much like what I might write manually,
 if
  I were using vanilla JavaScript. Looking at the TypeScript playground,
 the
  Inheritance example and the Modules example both look very nice.
 
  http://www.typescriptlang.org/Playground
 
  - Josh
 
  On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
  teotigraphix...@gmail.com wrote:
 
   On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com wrote:
  
New thread:
   
   
   
On 5/27/15, 9:52 AM, Michael Schmalle teotigraphix...@gmail.com
   wrote:
   
Well, when I said teach I just meant getting into the code.
  Really, I
know the base part of the compiler and the walker/visitor framework
  well
;-), so getting FalconJX to use an HTML.swc would be exactly what I
  am
looking for to do.

This is where you can keep doing what you are good at and I can
 work
  on
what I am good at(code rendering).

Can I ask you to start another thread and outline what you see
 needs
  to
   be
done to accomplish what is in your mind dealing with FalconJX and
 the
HTML.swc? If you can just brainstorm, then I can ask you questions
 to
   fill
in the gaps that I am not seeing.

   
As I see it, FalconJX should just be able to grab some SWCs and
cross-compile some AS based on definitions in the SWCs.  Right now
 we
   feed
it playerglobal/airglobal and FlexJS swcs with UIBase widgets, but
 in
theory, as Josh suggests we should be able to replace those SWCs
 with
   just:
   
jsglobal.swc:
Object
Number
String
what else?
   
HTML.swc:
Window
Event
UIEvent
MouseEvent
HTMLElement
etc.
   
   
   See for HTML lib, Roland used WebIDL parser to create it;
  
  
 https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib
  
   The builtin.swc we made;
  
  
 https://github.com/RandoriAS/randori-tools/tree/develop/RandoriBuiltin
  
   Read the README, does this violate anything?
  
  
  
Then folks should be able to test drive FalconJX by running some AS
through it to get any JS they normally use in their web apps, and we
should be able to stop writing any JS at all.  All files in
 flex-asjs
   that
are currently .JS files should be able to be written in AS and
cross-compiled with only those two SWCs.  I can tell you that it
 would
probably have saved us much time if we had this already.  It is
  painful
doing .JS code simply in the writing of ‘this.’ and ‘prototype’.
   
  
   Yeah, not to mention compile time checking. :)
  
  
  

Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
kludge to me is an ugly half solution for something that shouldn't have to
have a solution. :)

I am trying to figure out all the stuff I will run into if I go this way
and this sounds like a road block.

I seriously don't think TS has implemented a super property call yet. It's
in the github issue since 2014;

https://github.com/Microsoft/TypeScript/issues/338

Mike


On Wed, May 27, 2015 at 6:46 PM, Alex Harui aha...@adobe.com wrote:



 On 5/27/15, 3:42 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

 On Wed, May 27, 2015 at 6:35 PM, Alex Harui aha...@adobe.com wrote:
 
 
 
  On 5/27/15, 3:32 PM, Michael Schmalle teotigraphix...@gmail.com
 wrote:
 
  BTW, the ONE HELL I had with Randori was this get_ set_ crap, this will
  make is SO much easier. :)
 
  True, but IMO, there is still hell in calling the superclass’s getter
  and/or setter.
 
 
 You solved this obviously? So I can look at how you did it. Saves time. :)

 Yes, but I realized that it knows that we’re using goog.inherit.
 Basically we make an call to a utility function in
 org.apache.flex.utils.Language.js

 -Alex




Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
So basically your saying the output of ES5 from Babel?

Mike

On Wed, May 27, 2015 at 6:47 PM, Josh Tynjala joshtynj...@gmail.com wrote:

 You might also consider looking at the output of Babel. Babel transpiles
 ECMAScript 6 back to older versions of the language that are more widely
 supported today. TypeScript is trying to be a superset of ES6, so it should
 be pretty similar.

 http://babeljs.io

 - Josh

 On Wed, May 27, 2015 at 2:23 PM, Michael Schmalle 
 teotigraphix...@gmail.com
  wrote:

  Ok Update.
 
  I have been researching TypeScript and it's output, this is what I am
  doing. For some reason this just makes sense to me and the are 100's of
  examples I can use to test the code generation against.
 
  Josh, I would say if you want to start experimenting with your framework,
  use what you just showed me as a base and I can meet you in the middle,
  then we can figure our the quirks together.
 
  I will/am start/ing working on this ASAP.
 
  Mike
 
  On Wed, May 27, 2015 at 4:54 PM, Michael Schmalle 
  teotigraphix...@gmail.com
   wrote:
 
   Ok,
  
   I am a doer... :) Since this is all POC right now and I am up to learn
   some JS, I will use this as a format. I have done this JSEmitter 2
 times
   now so the 3rd isn't going to be that hard, maybe the charm for me to.
  
   Note, most of the expressions and statements are already done. As
 noted,
   inheritance, scope and set/get always are the pains but if I have a
  target
   output protocol like TypeScript's output, why not emulate it.
  
   Alex, I know what you are thinking... Don't. :) My gut feeling is, if I
   start from the ground up and have NO dependencies on anything, I will
 do
   this twice as fast. I am very good at refactoring so once I have tests
   working on the generated .js, we can see what could be abstracted to
 and
   from this emitter and FlexJS.
  
   I really think for my own sanity, I need to start in isolation and not
  get
   in FlexJS's way either, that is another pro for me, no commit
 conflicts,
   nothing of that nature.
  
   Thoughts Josh, Alex?
  
   Mike
  
  
  
  
  
  
   On Wed, May 27, 2015 at 4:40 PM, Josh Tynjala joshtynj...@gmail.com
   wrote:
  
   When I played with TypeScript, I loved that I could subclass CreateJS
   prototypes very easily. As long as something like that is possible
 from
   ActionScript (assuming I could provide a SWC or something for CreateJS
  or
   whichever library I want to use), I don't have too strong of an
 opinion
  on
   how the final JavaScript looks.
  
   I'll just say that I like the clean code that the TypeScript compiler
   outputs. To me, it looked pretty much like what I might write
 manually,
  if
   I were using vanilla JavaScript. Looking at the TypeScript playground,
  the
   Inheritance example and the Modules example both look very nice.
  
   http://www.typescriptlang.org/Playground
  
   - Josh
  
   On Wed, May 27, 2015 at 12:02 PM, Michael Schmalle 
   teotigraphix...@gmail.com wrote:
  
On Wed, May 27, 2015 at 2:50 PM, Alex Harui aha...@adobe.com
 wrote:
   
 New thread:



 On 5/27/15, 9:52 AM, Michael Schmalle 
 teotigraphix...@gmail.com
wrote:

 Well, when I said teach I just meant getting into the code.
   Really, I
 know the base part of the compiler and the walker/visitor
 framework
   well
 ;-), so getting FalconJX to use an HTML.swc would be exactly
 what I
   am
 looking for to do.
 
 This is where you can keep doing what you are good at and I can
  work
   on
 what I am good at(code rendering).
 
 Can I ask you to start another thread and outline what you see
  needs
   to
be
 done to accomplish what is in your mind dealing with FalconJX and
  the
 HTML.swc? If you can just brainstorm, then I can ask you
 questions
  to
fill
 in the gaps that I am not seeing.
 

 As I see it, FalconJX should just be able to grab some SWCs and
 cross-compile some AS based on definitions in the SWCs.  Right now
  we
feed
 it playerglobal/airglobal and FlexJS swcs with UIBase widgets, but
  in
 theory, as Josh suggests we should be able to replace those SWCs
  with
just:

 jsglobal.swc:
 Object
 Number
 String
 what else?

 HTML.swc:
 Window
 Event
 UIEvent
 MouseEvent
 HTMLElement
 etc.


See for HTML lib, Roland used WebIDL parser to create it;
   
   
  https://github.com/RandoriAS/randori-libraries/tree/master/HTMLCoreLib
   
The builtin.swc we made;
   
   
  https://github.com/RandoriAS/randori-tools/tree/develop/RandoriBuiltin
   
Read the README, does this violate anything?
   
   
   
 Then folks should be able to test drive FalconJX by running some
 AS
 through it to get any JS they normally use in their web apps, and
 we
 should be able to stop writing any JS at all.  All files in
  flex-asjs
that
 are currently .JS files should be 

Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Alex Harui


On 5/27/15, 1:13 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

On Wed, May 27, 2015 at 4:02 PM, Alex Harui aha...@adobe.com wrote:


 This is where, for Apache projects, it gets tricky/messy.  Tamarin code
is
 MPL (or xGPL) and Apache doesn’t like have source code dependencies on
 those licenses.  You can have a dependency on compiled MPL code so if
 there was a swc in a stable place that contained those compiled Tamarin
 .as files then we’d be good to go.  Otherwise, we may need to get an
 exception or get Adobe to re-license.  Not sure how hard that will be.
 And just linking to Randori may be seen as a valid way to get around it
 either since the Randori folks are also Flex committers.



Ok, well I emailed Roland and asked if he could enlighten me it's been so
long, I feel dumb when talking about Randori.

Hey, can you email Roland about AS3Commons’ ZIP library?  We use that in
the Installer and I think it needs to be moved someplace more stable like
GitHub because the old links to it stopped working.


We did not have playerglobal.swc and used FalconJX so it has to work and
if
the wheel has already been created, I see no reason in reinventing it, we
would just use built, could I for instance as a separate entity fork
that
repo to mine and then I maintain the code and compile it if wee need to,
then get the swc from my repo?


I would want to get a ruling on that from higher up in Apache.  First
there is the risk that your site goes away some day.  Then there is the
question as to whether PMC folks can set up external entities to get
around some of these Apache rules.  Now if there was already a swc we
could use on the mozilla site then that would be usable.



Hmm, ok maybe it's me being numb, I guess I am confusing the MXMLEmitter
with the JSEmitter. and what it's doing.

I swear I looked at the JSEmitter and it had a bunch of GCC stuff in it
and
all the comments and such. If I was to maintain a straight transpiler I
would want it to be as clean and extensible as possible.

You are right.  I think if you look in the code for JSFlexJSEmitter you
will find a bunch of GCL stuff and we use GCC to minify the results.  But
from memory (so I could be completely wrong) the GCL stuff is used for
goog.requires to load other dependencies, goog.inherits and goog.base
(sort of) to deal with inheritance.  But if you have a class that extends
from Object that is just creating HTMLElements and listening for mouse
clicks, I’m not sure how much “goog” will be in the output.


On that note; In the Randori emitter I used about 8 class compositions in
the JS emitter whcih decoupled a huge amount of code. I think we could do
that with the current GFLexJS emitter and share 1/2 to 2/3 of the code
base
that exists right now.

What do you think?

Not sure I understood that, but I trust you.  Sharing code is almost
always good.

-Alex



Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
On Wed, May 27, 2015 at 5:46 PM, Alex Harui aha...@adobe.com wrote:




 Hey, can you email Roland about AS3Commons’ ZIP library?  We use that in
 the Installer and I think it needs to be moved someplace more stable like
 GitHub because the old links to it stopped working.



Yeah if I get a hold of him tomorrow I will ask.




 I would want to get a ruling on that from higher up in Apache.  First
 there is the risk that your site goes away some day.  Then there is the
 question as to whether PMC folks can set up external entities to get
 around some of these Apache rules.  Now if there was already a swc we
 could use on the mozilla site then that would be usable.



I mean github but yeah, I have no idea what I am talking about so this one
is on your shoulders. :)



 
 
 Hmm, ok maybe it's me being numb, I guess I am confusing the MXMLEmitter
 with the JSEmitter. and what it's doing.
 
 I swear I looked at the JSEmitter and it had a bunch of GCC stuff in it
 and
 all the comments and such. If I was to maintain a straight transpiler I
 would want it to be as clean and extensible as possible.

 You are right.  I think if you look in the code for JSFlexJSEmitter you
 will find a bunch of GCL stuff and we use GCC to minify the results.  But
 from memory (so I could be completely wrong) the GCL stuff is used for
 goog.requires to load other dependencies, goog.inherits and goog.base
 (sort of) to deal with inheritance.  But if you have a class that extends
 from Object that is just creating HTMLElements and listening for mouse
 clicks, I’m not sure how much “goog” will be in the output.



Read my last 2 responses, I am going to aim at the type script output.
Either way this is just getting my mind back into the compiler, even if
it's a month's excerise into nothingness it will still be beneficial for me.

The thing is, I look at what they are doing in TypeScript and I KNOW that
can be done in about 2 months with the new JXEmitter. ;-)

What I mean is, we get a builtin and htmllib, all the basic examples on
their front page I know I could get compiling in an ActionScript project
and working in the browser, I am 95% percent confident in this.

So I'm saying I can see the beginning and end with that cross compile. :)
What could be built from that code, hopefully a lot. It gives this project
two definite paths for developers, I really think this is a good idea from
Josh and now I am really seeing it's potential.




 
 On that note; In the Randori emitter I used about 8 class compositions in
 the JS emitter whcih decoupled a huge amount of code. I think we could do
 that with the current GFLexJS emitter and share 1/2 to 2/3 of the code
 base
 that exists right now.
 
 What do you think?

 Not sure I understood that, but I trust you.  Sharing code is almost
 always good.



Sorry I had typos. All I meant was I abstracted, statements, expressions
etc into composite classes and shared data in a model. It made the code
really clean.

I don't want to mess up anything you are working on right now with FlexJS,
reference my previous 2 posts about this. :)

Mike



 -Alex




Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
Get/Set

For this TypeScript;

class foo {
private _bar:Boolean = false;
get bar():Boolean {
return this._bar;
}
set bar(theBar:Boolean) {
this._bar = theBar;
}
}

It produces;

var foo = (function () {
function foo() {
this._bar = false;
}
Object.defineProperty(foo.prototype, bar, {
get: function () {
return this._bar;
},
set: function (theBar) {
this._bar = theBar;
},
enumerable: true,
configurable: true
});
return foo;
})();

Is that how you are doing it, I havn't looked close yet.

Mike





On Wed, May 27, 2015 at 6:17 PM, Alex Harui aha...@adobe.com wrote:



 On 5/27/15, 1:54 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

 Ok,
 
 I am a doer... :) Since this is all POC right now and I am up to learn
 some
 JS, I will use this as a format. I have done this JSEmitter 2 times now so
 the 3rd isn't going to be that hard, maybe the charm for me to.
 
 Note, most of the expressions and statements are already done. As noted,
 inheritance, scope and set/get always are the pains but if I have a target
 output protocol like TypeScript's output, why not emulate it.
 
 Alex, I know what you are thinking... Don't. :) My gut feeling is, if I
 start from the ground up and have NO dependencies on anything, I will do
 this twice as fast. I am very good at refactoring so once I have tests
 working on the generated .js, we can see what could be abstracted to and
 from this emitter and FlexJS.
 
 I really think for my own sanity, I need to start in isolation and not get
 in FlexJS's way either, that is another pro for me, no commit conflicts,
 nothing of that nature.
 
 Thoughts Josh, Alex?

 OK, have fun.  There isn’t too much emitter development going on right now
 so you could work in a branch if you want.

 BTW, I didn’t see how TS handles properties, but FlexJS is no longer using
 get_/set_ and now using Object.defineProperties.

 -Alex




Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
BTW, the ONE HELL I had with Randori was this get_ set_ crap, this will
make is SO much easier. :)

Mike

On Wed, May 27, 2015 at 6:29 PM, Michael Schmalle teotigraphix...@gmail.com
 wrote:

 Get/Set

 For this TypeScript;

 class foo {
 private _bar:Boolean = false;
 get bar():Boolean {
 return this._bar;
 }
 set bar(theBar:Boolean) {
 this._bar = theBar;
 }
 }

 It produces;

 var foo = (function () {
 function foo() {
 this._bar = false;
 }
 Object.defineProperty(foo.prototype, bar, {
 get: function () {
 return this._bar;
 },
 set: function (theBar) {
 this._bar = theBar;
 },
 enumerable: true,
 configurable: true
 });
 return foo;
 })();

 Is that how you are doing it, I havn't looked close yet.

 Mike





 On Wed, May 27, 2015 at 6:17 PM, Alex Harui aha...@adobe.com wrote:



 On 5/27/15, 1:54 PM, Michael Schmalle teotigraphix...@gmail.com
 wrote:

 Ok,
 
 I am a doer... :) Since this is all POC right now and I am up to learn
 some
 JS, I will use this as a format. I have done this JSEmitter 2 times now
 so
 the 3rd isn't going to be that hard, maybe the charm for me to.
 
 Note, most of the expressions and statements are already done. As noted,
 inheritance, scope and set/get always are the pains but if I have a
 target
 output protocol like TypeScript's output, why not emulate it.
 
 Alex, I know what you are thinking... Don't. :) My gut feeling is, if I
 start from the ground up and have NO dependencies on anything, I will do
 this twice as fast. I am very good at refactoring so once I have tests
 working on the generated .js, we can see what could be abstracted to and
 from this emitter and FlexJS.
 
 I really think for my own sanity, I need to start in isolation and not
 get
 in FlexJS's way either, that is another pro for me, no commit conflicts,
 nothing of that nature.
 
 Thoughts Josh, Alex?

 OK, have fun.  There isn’t too much emitter development going on right now
 so you could work in a branch if you want.

 BTW, I didn’t see how TS handles properties, but FlexJS is no longer using
 get_/set_ and now using Object.defineProperties.

 -Alex





Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Alex Harui
Yes, so good that will be in alignment.

On 5/27/15, 3:29 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

Get/Set

For this TypeScript;

class foo {
private _bar:Boolean = false;
get bar():Boolean {
return this._bar;
}
set bar(theBar:Boolean) {
this._bar = theBar;
}
}

It produces;

var foo = (function () {
function foo() {
this._bar = false;
}
Object.defineProperty(foo.prototype, bar, {
get: function () {
return this._bar;
},
set: function (theBar) {
this._bar = theBar;
},
enumerable: true,
configurable: true
});
return foo;
})();

Is that how you are doing it, I havn't looked close yet.

Mike





On Wed, May 27, 2015 at 6:17 PM, Alex Harui aha...@adobe.com wrote:



 On 5/27/15, 1:54 PM, Michael Schmalle teotigraphix...@gmail.com
wrote:

 Ok,
 
 I am a doer... :) Since this is all POC right now and I am up to learn
 some
 JS, I will use this as a format. I have done this JSEmitter 2 times
now so
 the 3rd isn't going to be that hard, maybe the charm for me to.
 
 Note, most of the expressions and statements are already done. As
noted,
 inheritance, scope and set/get always are the pains but if I have a
target
 output protocol like TypeScript's output, why not emulate it.
 
 Alex, I know what you are thinking... Don't. :) My gut feeling is, if I
 start from the ground up and have NO dependencies on anything, I will
do
 this twice as fast. I am very good at refactoring so once I have tests
 working on the generated .js, we can see what could be abstracted to
and
 from this emitter and FlexJS.
 
 I really think for my own sanity, I need to start in isolation and not
get
 in FlexJS's way either, that is another pro for me, no commit
conflicts,
 nothing of that nature.
 
 Thoughts Josh, Alex?

 OK, have fun.  There isn’t too much emitter development going on right
now
 so you could work in a branch if you want.

 BTW, I didn’t see how TS handles properties, but FlexJS is no longer
using
 get_/set_ and now using Object.defineProperties.

 -Alex





Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Alex Harui


On 5/27/15, 3:32 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

BTW, the ONE HELL I had with Randori was this get_ set_ crap, this will
make is SO much easier. :)

True, but IMO, there is still hell in calling the superclass’s getter
and/or setter.

-Alex



Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Michael Schmalle
Well, that is semantics that challenge me, the get_, set_ was kludge and I
hate kludge. :)

I will make a jxemitter branch when I start.

Mike

On Wed, May 27, 2015 at 6:35 PM, Alex Harui aha...@adobe.com wrote:



 On 5/27/15, 3:32 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

 BTW, the ONE HELL I had with Randori was this get_ set_ crap, this will
 make is SO much easier. :)

 True, but IMO, there is still hell in calling the superclass’s getter
 and/or setter.

 -Alex




Re: [FalconJX] AS for Native HTML JS (was Re: [FalconJX FlexJS] JIRA issues and helping with the compiler)

2015-05-27 Thread Alex Harui


On 5/27/15, 1:54 PM, Michael Schmalle teotigraphix...@gmail.com wrote:

Ok,

I am a doer... :) Since this is all POC right now and I am up to learn
some
JS, I will use this as a format. I have done this JSEmitter 2 times now so
the 3rd isn't going to be that hard, maybe the charm for me to.

Note, most of the expressions and statements are already done. As noted,
inheritance, scope and set/get always are the pains but if I have a target
output protocol like TypeScript's output, why not emulate it.

Alex, I know what you are thinking... Don't. :) My gut feeling is, if I
start from the ground up and have NO dependencies on anything, I will do
this twice as fast. I am very good at refactoring so once I have tests
working on the generated .js, we can see what could be abstracted to and
from this emitter and FlexJS.

I really think for my own sanity, I need to start in isolation and not get
in FlexJS's way either, that is another pro for me, no commit conflicts,
nothing of that nature.

Thoughts Josh, Alex?

OK, have fun.  There isn’t too much emitter development going on right now
so you could work in a branch if you want.

BTW, I didn’t see how TS handles properties, but FlexJS is no longer using
get_/set_ and now using Object.defineProperties.

-Alex