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
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>
>
                                          

Reply via email to