On Wed, Jun 17, 2015 at 5:34 PM, Josh Tynjala <joshtynj...@gmail.com> wrote:
> IntelliJ IDEA is an prominent IDE for ActionScript developers these days. I > totally understand why you want this compiler to work well there. I use > IntelliJ IDEA every day, so I would love it if everything worked there, out > of the box. > > I'm just throwing in my two cents about what I see as potential user > experience issues, especially in other environments that don't have the > same limitations. If I come off as overly critical or judgmental, I hope > you can read that as me trying to be quick to help out where I can with the > short time I have to contribute right now. > > Yes, we are on the same wave, I didn't think this at all and I appreciate your 2cents very much. I just wanted to make it clear I am flying by the seat of my pants and can't believe this works already. So the comment was more from, I may be cutting corners right now but it was to prove the prototype which i think I have now. Mike > - Josh > > On Wed, Jun 17, 2015 at 12:21 PM, Michael Schmalle < > teotigraphix...@gmail.com> wrote: > > > Just to add, I am coming at this as a compiler dev not a user right now. > So > > Josh, I may seem short sighted trying to hack something with an IDE I use > > but I hope you don't get that impression from me. > > > > I annoyed that IJ doesn't use the Object definition of our Object. > > I have a feeling I know why and it has to do with their "language" plugin > > because Flash support is really just javascript support with some addons. > > > > I already stated I don't want to do this JSObject thing, let the record > be > > known. :) > > > > But I also want as much chance for this little compiler project with JS > to > > have as much possible success. Not having native Object properties for > ES3 > > and ES5 seems strange to someone trying it. > > > > Mike > > > > On Wed, Jun 17, 2015 at 1:20 PM, Frédéric THOMAS < > webdoubl...@hotmail.com> > > wrote: > > > > > Well, looking at it better, we probably have everything we need with > our > > > OOP mechanism for not having to use it. > > > > > > Frédéric THOMAS > > > > > > > > > ---------------------------------------- > > > > From: aha...@adobe.com > > > > To: dev@flex.apache.org > > > > Subject: Re: [FlaconJX] JS.swc design problems (was [FlexJS] IntelliJ > > > Integration) > > > > Date: Wed, 17 Jun 2015 16:36:16 +0000 > > > > > > > > Along that line of thinking: What are some (or all) of the APIs on > > Object > > > > that are missing, and realistically, how often should someone want to > > use > > > > them? Do we think folks writing TS code use them? If not, and there > is > > a > > > > different way to do the same thing in AS, and few folks are even > going > > to > > > > hit this, maybe we just put it in the RELEASE_NOTES and see if we can > > > > attract users and they will put the pressure on JetBrains. > > > > > > > > -Alex > > > > > > > > On 6/17/15, 9:28 AM, "Josh Tynjala" <joshtynj...@gmail.com> wrote: > > > > > > > >>Seems to me like we could get a bunch of developers who are > interested > > in > > > >>the compiler to pile on and vote on an issue to show that it's > > important. > > > >>I'd rather not have the compiler jump through hoops just to get one > > buggy > > > >>IDE to give proper code hinting. > > > >> > > > >>- Josh > > > >> > > > >>On Wed, Jun 17, 2015 at 8:34 AM, Michael Schmalle > > > >><teotigraphix...@gmail.com > > > >>> wrote: > > > >> > > > >>> On Wed, Jun 17, 2015 at 11:25 AM, Frédéric THOMAS > > > >>><webdoubl...@hotmail.com > > > >>>> > > > >>> wrote: > > > >>> > > > >>>>> Oh yeah one other thing Fred, EVERYTING needs to extend JSObject > > > >>>that > > > >>>>> extends Object(in the externs def) for it to work correctly in IJ > > > >>>code > > > >>>>> completion. Or else IJ will think the HTML class extends it's > ECMA2 > > > >>>> Object > > > >>>>> and not JSObject. > > > >>>> > > > >>>> Yes, it is what I meant but EVERYTHING in JS.swc only, right ? > > > >>>> > > > >>> > > > >>> Correct, it's just candy for the IDE. If somebody doesn't care > about > > > >>> Object.create() or myInstance.__proto__ then it really doesn't > > matter. > > > >>> > > > >>> But we cannot call this true JS until we allow natively these > > > properties > > > >>> and methods of ES3 and ES5 IMO. > > > >>> > > > >>> That is why eventually I am going to have to bite the bullet and > > > >>>implement > > > >>> this. > > > >>> > > > >>> I got a busy 2 weeks coming up, I have a lot of remodeling for my > > > >>>mother in > > > >>> law to do so I won't have as much time as I did these last 3 weeks, > > > also > > > >>> why I busted my ass, so people could have something to try out. > > > >>> > > > >>> Mike > > > >>> > > > >>> > > > >>> > > > >>>> > > > >>>> Frédéric THOMAS > > > >>>> > > > >>>> > > > >>>> ---------------------------------------- > > > >>>>> Date: Wed, 17 Jun 2015 11:22:06 -0400 > > > >>>>> Subject: Re: [FlaconJX] JS.swc design problems (was [FlexJS] > > > >>>IntelliJ > > > >>>> Integration) > > > >>>>> From: teotigraphix...@gmail.com > > > >>>>> To: dev@flex.apache.org > > > >>>>> > > > >>>>> Oh yeah one other thing Fred, EVERYTING needs to extend JSObject > > > >>>that > > > >>>>> extends Object(in the externs def) for it to work correctly in IJ > > > >>>code > > > >>>>> completion. Or else IJ will think the HTML class extends it's > ECMA2 > > > >>>> Object > > > >>>>> and not JSObject. > > > >>>>> > > > >>>>> Mike > > > >>>>> > > > >>>>> On Wed, Jun 17, 2015 at 11:20 AM, Michael Schmalle < > > > >>>>> teotigraphix...@gmail.com> wrote: > > > >>>>> > > > >>>>>> > > > >>>>>> > > > >>>>>> On Wed, Jun 17, 2015 at 11:12 AM, Frédéric THOMAS < > > > >>>> webdoubl...@hotmail.com > > > >>>>>>> wrote: > > > >>>>>> > > > >>>>>>>> What Fred is saying, Have JSObject extend Object. Thus > JSObject > > > >>> would > > > >>>>>>> have > > > >>>>>>>> all ES3 and ES5 Object properties and methods, thus IJ would > > code > > > >>> hint > > > >>>>>>>> correctly > > > >>>>>>> > > > >>>>>>> I could be wrong but wrong but I would think it would work even > > > >>> though > > > >>>>>>> JSObject doesn't extend Object. > > > >>>>>>> When you construct JS.swc parsing the definition files, when > you > > > >>>meet > > > >>>> the > > > >>>>>>> Named Object class, just re-write it as JSObject anywhere and > > > >>>while > > > >>>>>>> emitting the final JS file, re-write it as Object, that wouldn' > > do > > > >>> the > > > >>>>>>> trick ? > > > >>>>>>> > > > >>>>>> > > > >>>>>> > > > >>>>>> Yes, BUT Falcon COMPC still needs an Object definition to > compile! > > > >>>;-) > > > >>>>>> That is the sticker point here, you see my point? > > > >>>>>> > > > >>>>>> Although, maybe I could just include an empty Object and then it > > > >>>would > > > >>>>>> matter in IJ. > > > >>>>>> > > > >>>>>> Still the emitter will need to know about JSObject to transform > it > > > >>> back > > > >>>> to > > > >>>>>> Object during cross compile. > > > >>>>>> > > > >>>>>> Mike > > > >>>>>> > > > >>>>>> > > > >>>>>> > > > >>>>>>> > > > >>>>>>>>> If Adobe adds something to Object in > > > >>>>>>>>> playerglobal/airglobal will IJ pick it up? > > > >>>>>>>>> > > > >>>>>>>> > > > >>>>>>>> I would bet it wouldn't. > > > >>>>>>> > > > >>>>>>> IJ would allow writing (without hints) and compile, due to the > > > >>> dynamic > > > >>>>>>> nature of Object. > > > >>>>>>> > > > >>>>>>> Frédéric THOMAS > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> ---------------------------------------- > > > >>>>>>>> Date: Wed, 17 Jun 2015 10:51:09 -0400 > > > >>>>>>>> Subject: Re: [FlaconJX] JS.swc design problems (was [FlexJS] > > > >>> IntelliJ > > > >>>>>>> Integration) > > > >>>>>>>> From: teotigraphix...@gmail.com > > > >>>>>>>> To: dev@flex.apache.org > > > >>>>>>>> > > > >>>>>>>> On Wed, Jun 17, 2015 at 10:29 AM, Alex Harui < > aha...@adobe.com> > > > >>>> wrote: > > > >>>>>>>> > > > >>>>>>>>> > > > >>>>>>>>> > > > >>>>>>>>> On 6/17/15, 7:20 AM, "Frédéric THOMAS" < > > webdoubl...@hotmail.com> > > > >>>>>>> wrote: > > > >>>>>>>>> > > > >>>>>>>>>>> Fred; The point is, you would have to rename every package > > > >>>level > > > >>>>>>> class > > > >>>>>>>>>>>to > > > >>>>>>>>>>> not get an ambiguous error in the IDE. > > > >>>>>>>>>> > > > >>>>>>>>>>Yes, but I guess it should be done for Object as there are no > > > >>>way > > > >>> to > > > >>>>>>> get > > > >>>>>>>>>>it in IJ as it has a hardcoded definition, the JSObject > option > > > >>> seems > > > >>>>>>> good > > > >>>>>>>>>>to me, what about you ? > > > >>>>>>>>> > > > >>>>>>>>> Wouldn’t that mess up inheritance from everything that > extends > > > >>>> Object? > > > >>>>>>>>> > > > >>>>>>>> > > > >>>>>>>> What Fred is saying, Have JSObject extend Object. Thus > JSObject > > > >>> would > > > >>>>>>> have > > > >>>>>>>> all ES3 and ES5 Object properties and methods, thus IJ would > > code > > > >>> hint > > > >>>>>>>> correctly because it's using it's builtin ECMA2 Object def and > > > >>>the > > > >>>>>>> JSObject > > > >>>>>>>> would extend from that. > > > >>>>>>>> > > > >>>>>>>> As I said, this si complicated because on my end it would not > be > > > >>>cut > > > >>>> and > > > >>>>>>>> dry how I could do this, would add a huge amount of > indirection > > > >>>in > > > >>> the > > > >>>>>>> code > > > >>>>>>>> for the externs compiler and FlexJS emitter if we didn't have > > > >>>> metadata. > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>>> Can I get a more detailed technical understanding of this > > issue? > > > >>> How > > > >>>>>>> does > > > >>>>>>>>> IJ have a hard coded definition? > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> It uses an ECMA2 file for ActionScript which looks like a > > > >>>compiled > > > >>>> SWF I > > > >>>>>>>> would guess. It does not use the Object definitions from > > > >>> playerglobal > > > >>>>>>> in a > > > >>>>>>>> Flex/ActionScript project > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>>> Is this just for code completion in the > > > >>>>>>>>> editor or is it compile time as well? > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> It's code hinting. > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>>> I would think that if they are > > > >>>>>>>>> calling our compiler that we could control this issue. Is > this > > a > > > >>> bug > > > >>>>>>>>> worth filing against IJ? > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> Well IJ and JetBrains really seem disinterested with > > ActionScript > > > >>>> these > > > >>>>>>>> days. > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>>> If Adobe adds something to Object in > > > >>>>>>>>> playerglobal/airglobal will IJ pick it up? > > > >>>>>>>>> > > > >>>>>>>> > > > >>>>>>>> I would bet it wouldn't. > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> The ambiguous error is coming from MXMLC/JSC, its our compiler > > > >>>that > > > >>> is > > > >>>>>>>> barfing. > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>> Mike > > > >>>>>>>> > > > >>>>>>>> > > > >>>>>>>>> > > > >>>>>>>>> -Alex > > > >>>>>>>>> > > > >>>>>>>>> > > > >>>>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>>> > > > >>>>>> > > > >>>> > > > >>>> > > > >>> > > > > > > > > > > > > >