You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by Michael Schmalle <ap...@teotigraphix.com> on 2012/12/31 13:35:24 UTC

[Wiki] AS3 language features to be simulated

Hey Frank,

I'm getting a bit confused here. I guess I really need to spend some  
time and get the relevant javascript information under my belt.

Is what you are showing on this page, your solution?

Please comment on the below if the code is what you are talking about  
in those paragraphs;


Members and visibility
---------------------------

private function _privateMethod():void {
}
   - this._privateMethod()

public var foo:int;
   - foo = 42

private var foo:int;
   - foo$FooClass = 42

internal bar:int;
   - bar$foo_bar_baz

The above seems like it's going to be pretty universal regardless of  
what production scheme we use. Is there any articles you know about  
that explain JS scope and how it's implemented? Or is that just the  
ECMA5 specs?

Mike






-- 
Michael Schmalle - Teoti Graphix, LLC
http://www.teotigraphix.com
http://blog.teotigraphix.com


Re: [Wiki] AS3 language features to be simulated

Posted by Frank Wienberg <fr...@jangaroo.net>.
Sounds great!
Btw, I'm still working on optimizing / simplifying the runtime prototype
and will post here when I reached another stable state.

-Frank-


On Mon, Dec 31, 2012 at 3:40 PM, Michael Schmalle
<ap...@teotigraphix.com>wrote:

> No, you didn't confuse me.
>
> I think for the time being I will keep my eyes shut to these
> implementation discussions. :) I have to go back now and finish some things
> with the compiler, configuration etc in the project before I focus back on
> the js production.
>
> I did checkout your project from GIT locally and will use that to start
> investigating in my free time. I probably will also create another emitter
> subclass to experiment with producing your examples so we can compare the
> two down the road.
>
> If I do this, it may allow you to check out the FalconJx code and start
> submitting some patches against it.
>
> Mike
>
>
> Quoting Frank Wienberg <fr...@jangaroo.net>:
>
>  Hi Mike,
>>
>> sorry if I confused you, the Wiki page is still work in progress and much
>> my "brain dump" of all AS3 features I know have to be simulated, and also
>> how I'd suggest to do so.
>> As I continue, I'm going to add more illustrating examples. Concerning the
>> private members, I think you are on the right track. The "class
>> inheritance
>> level" I am talking about is an optimization over using the fully
>> qualified
>> name of the class as postfix for private fields. In Jangaroo, we compute
>> the inheritance level (or depth) of the class and simply use that number.
>> This also ensures unique identifiers, as a class can never have the same
>> inheritance level as any super or sub class.
>>
>> Greetings
>> -Frank-
>>
>>
>> On Mon, Dec 31, 2012 at 1:35 PM, Michael Schmalle
>> <ap...@teotigraphix.com>**wrote:
>>
>>  Hey Frank,
>>>
>>> I'm getting a bit confused here. I guess I really need to spend some time
>>> and get the relevant javascript information under my belt.
>>>
>>> Is what you are showing on this page, your solution?
>>>
>>> Please comment on the below if the code is what you are talking about in
>>> those paragraphs;
>>>
>>>
>>> Members and visibility
>>> ---------------------------
>>>
>>> private function _privateMethod():void {
>>> }
>>>   - this._privateMethod()
>>>
>>> public var foo:int;
>>>   - foo = 42
>>>
>>> private var foo:int;
>>>   - foo$FooClass = 42
>>>
>>> internal bar:int;
>>>   - bar$foo_bar_baz
>>>
>>> The above seems like it's going to be pretty universal regardless of what
>>> production scheme we use. Is there any articles you know about that
>>> explain
>>> JS scope and how it's implemented? Or is that just the ECMA5 specs?
>>>
>>> Mike
>>>
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Michael Schmalle - Teoti Graphix, LLC
>>> http://www.teotigraphix.com
>>> http://blog.teotigraphix.com
>>>
>>>
>>>
>>
> --
> Michael Schmalle - Teoti Graphix, LLC
> http://www.teotigraphix.com
> http://blog.teotigraphix.com
>
>

Re: [Wiki] AS3 language features to be simulated

Posted by Michael Schmalle <ap...@teotigraphix.com>.
Quoting Erik de Bruin <er...@ixsoftware.nl>:

>> I did checkout your project from GIT locally and will use that to start
>> investigating in my free time. I probably will also create another emitter
>> subclass to experiment with producing your examples so we can compare the
>> two down the road.
>
>
> My thoughts exactly. The goog and jangaroo (for lack of a better working
> title) approaches are mutually exclusive in their choices wrt inheritance
> and other key language features (scoping etc.), so the only way not to get
> in each other's hairs all the time is to have separate playgrounds :-)


HAHA, I think you misread what I said. In no way shape or for was  
there ever going to be only 1 emitter. :) What I meant was sooner than  
later I am going to create the "other" emitter so we have a side by  
side functionality happening. IE Developed together so there is no  
"lag" time when we get to decisions.

Mike

>
>> If I do this, it may allow you to check out the FalconJx code and start
>> submitting some patches against it.
>>
>> Mike
>>
>> Quoting Frank Wienberg <fr...@jangaroo.net>:
>>
>>  Hi Mike,
>>>
>>> sorry if I confused you, the Wiki page is still work in progress and much
>>> my "brain dump" of all AS3 features I know have to be simulated, and also
>>> how I'd suggest to do so.
>>> As I continue, I'm going to add more illustrating examples. Concerning the
>>> private members, I think you are on the right track. The "class
>>> inheritance
>>> level" I am talking about is an optimization over using the fully
>>> qualified
>>> name of the class as postfix for private fields. In Jangaroo, we compute
>>> the inheritance level (or depth) of the class and simply use that number.
>>> This also ensures unique identifiers, as a class can never have the same
>>> inheritance level as any super or sub class.
>>>
>>> Greetings
>>> -Frank-
>>>
>>>
>>> On Mon, Dec 31, 2012 at 1:35 PM, Michael Schmalle
>>> <ap...@teotigraphix.com>wrote:
>>>
>>>  Hey Frank,
>>>>
>>>> I'm getting a bit confused here. I guess I really need to spend some time
>>>> and get the relevant javascript information under my belt.
>>>>
>>>> Is what you are showing on this page, your solution?
>>>>
>>>> Please comment on the below if the code is what you are talking about in
>>>> those paragraphs;
>>>>
>>>>
>>>> Members and visibility
>>>> ---------------------------
>>>>
>>>> private function _privateMethod():void {
>>>> }
>>>>   - this._privateMethod()
>>>>
>>>> public var foo:int;
>>>>   - foo = 42
>>>>
>>>> private var foo:int;
>>>>   - foo$FooClass = 42
>>>>
>>>> internal bar:int;
>>>>   - bar$foo_bar_baz
>>>>
>>>> The above seems like it's going to be pretty universal regardless of what
>>>> production scheme we use. Is there any articles you know about that
>>>> explain
>>>> JS scope and how it's implemented? Or is that just the ECMA5 specs?
>>>>
>>>> Mike
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Michael Schmalle - Teoti Graphix, LLC
>>>> http://www.teotigraphix.com
>>>> http://blog.teotigraphix.com
>>>>
>>>>
>>>>
>>>
>> --
>> Michael Schmalle - Teoti Graphix, LLC
>> http://www.teotigraphix.com
>> http://blog.teotigraphix.com
>>
>>
>
> --
> Ix Multimedia Software
>
> Jan Luykenstraat 27
> 3521 VB Utrecht
>
> T. 06-51952295
> I. www.ixsoftware.nl
>

-- 
Michael Schmalle - Teoti Graphix, LLC
http://www.teotigraphix.com
http://blog.teotigraphix.com


Re: [Wiki] AS3 language features to be simulated

Posted by Erik de Bruin <er...@ixsoftware.nl>.
> I did checkout your project from GIT locally and will use that to start
> investigating in my free time. I probably will also create another emitter
> subclass to experiment with producing your examples so we can compare the
> two down the road.


My thoughts exactly. The goog and jangaroo (for lack of a better working
title) approaches are mutually exclusive in their choices wrt inheritance
and other key language features (scoping etc.), so the only way not to get
in each other's hairs all the time is to have separate playgrounds :-)


> If I do this, it may allow you to check out the FalconJx code and start
> submitting some patches against it.
>
> Mike
>
> Quoting Frank Wienberg <fr...@jangaroo.net>:
>
>  Hi Mike,
>>
>> sorry if I confused you, the Wiki page is still work in progress and much
>> my "brain dump" of all AS3 features I know have to be simulated, and also
>> how I'd suggest to do so.
>> As I continue, I'm going to add more illustrating examples. Concerning the
>> private members, I think you are on the right track. The "class
>> inheritance
>> level" I am talking about is an optimization over using the fully
>> qualified
>> name of the class as postfix for private fields. In Jangaroo, we compute
>> the inheritance level (or depth) of the class and simply use that number.
>> This also ensures unique identifiers, as a class can never have the same
>> inheritance level as any super or sub class.
>>
>> Greetings
>> -Frank-
>>
>>
>> On Mon, Dec 31, 2012 at 1:35 PM, Michael Schmalle
>> <ap...@teotigraphix.com>wrote:
>>
>>  Hey Frank,
>>>
>>> I'm getting a bit confused here. I guess I really need to spend some time
>>> and get the relevant javascript information under my belt.
>>>
>>> Is what you are showing on this page, your solution?
>>>
>>> Please comment on the below if the code is what you are talking about in
>>> those paragraphs;
>>>
>>>
>>> Members and visibility
>>> ---------------------------
>>>
>>> private function _privateMethod():void {
>>> }
>>>   - this._privateMethod()
>>>
>>> public var foo:int;
>>>   - foo = 42
>>>
>>> private var foo:int;
>>>   - foo$FooClass = 42
>>>
>>> internal bar:int;
>>>   - bar$foo_bar_baz
>>>
>>> The above seems like it's going to be pretty universal regardless of what
>>> production scheme we use. Is there any articles you know about that
>>> explain
>>> JS scope and how it's implemented? Or is that just the ECMA5 specs?
>>>
>>> Mike
>>>
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Michael Schmalle - Teoti Graphix, LLC
>>> http://www.teotigraphix.com
>>> http://blog.teotigraphix.com
>>>
>>>
>>>
>>
> --
> Michael Schmalle - Teoti Graphix, LLC
> http://www.teotigraphix.com
> http://blog.teotigraphix.com
>
>

-- 
Ix Multimedia Software

Jan Luykenstraat 27
3521 VB Utrecht

T. 06-51952295
I. www.ixsoftware.nl

Re: [Wiki] AS3 language features to be simulated

Posted by Michael Schmalle <ap...@teotigraphix.com>.
No, you didn't confuse me.

I think for the time being I will keep my eyes shut to these  
implementation discussions. :) I have to go back now and finish some  
things with the compiler, configuration etc in the project before I  
focus back on the js production.

I did checkout your project from GIT locally and will use that to  
start investigating in my free time. I probably will also create  
another emitter subclass to experiment with producing your examples so  
we can compare the two down the road.

If I do this, it may allow you to check out the FalconJx code and  
start submitting some patches against it.

Mike

Quoting Frank Wienberg <fr...@jangaroo.net>:

> Hi Mike,
>
> sorry if I confused you, the Wiki page is still work in progress and much
> my "brain dump" of all AS3 features I know have to be simulated, and also
> how I'd suggest to do so.
> As I continue, I'm going to add more illustrating examples. Concerning the
> private members, I think you are on the right track. The "class inheritance
> level" I am talking about is an optimization over using the fully qualified
> name of the class as postfix for private fields. In Jangaroo, we compute
> the inheritance level (or depth) of the class and simply use that number.
> This also ensures unique identifiers, as a class can never have the same
> inheritance level as any super or sub class.
>
> Greetings
> -Frank-
>
>
> On Mon, Dec 31, 2012 at 1:35 PM, Michael Schmalle
> <ap...@teotigraphix.com>wrote:
>
>> Hey Frank,
>>
>> I'm getting a bit confused here. I guess I really need to spend some time
>> and get the relevant javascript information under my belt.
>>
>> Is what you are showing on this page, your solution?
>>
>> Please comment on the below if the code is what you are talking about in
>> those paragraphs;
>>
>>
>> Members and visibility
>> ---------------------------
>>
>> private function _privateMethod():void {
>> }
>>   - this._privateMethod()
>>
>> public var foo:int;
>>   - foo = 42
>>
>> private var foo:int;
>>   - foo$FooClass = 42
>>
>> internal bar:int;
>>   - bar$foo_bar_baz
>>
>> The above seems like it's going to be pretty universal regardless of what
>> production scheme we use. Is there any articles you know about that explain
>> JS scope and how it's implemented? Or is that just the ECMA5 specs?
>>
>> Mike
>>
>>
>>
>>
>>
>>
>> --
>> Michael Schmalle - Teoti Graphix, LLC
>> http://www.teotigraphix.com
>> http://blog.teotigraphix.com
>>
>>
>

-- 
Michael Schmalle - Teoti Graphix, LLC
http://www.teotigraphix.com
http://blog.teotigraphix.com


Re: [Wiki] AS3 language features to be simulated

Posted by Frank Wienberg <fr...@jangaroo.net>.
Hi Mike,

sorry if I confused you, the Wiki page is still work in progress and much
my "brain dump" of all AS3 features I know have to be simulated, and also
how I'd suggest to do so.
As I continue, I'm going to add more illustrating examples. Concerning the
private members, I think you are on the right track. The "class inheritance
level" I am talking about is an optimization over using the fully qualified
name of the class as postfix for private fields. In Jangaroo, we compute
the inheritance level (or depth) of the class and simply use that number.
This also ensures unique identifiers, as a class can never have the same
inheritance level as any super or sub class.

Greetings
-Frank-


On Mon, Dec 31, 2012 at 1:35 PM, Michael Schmalle
<ap...@teotigraphix.com>wrote:

> Hey Frank,
>
> I'm getting a bit confused here. I guess I really need to spend some time
> and get the relevant javascript information under my belt.
>
> Is what you are showing on this page, your solution?
>
> Please comment on the below if the code is what you are talking about in
> those paragraphs;
>
>
> Members and visibility
> ---------------------------
>
> private function _privateMethod():void {
> }
>   - this._privateMethod()
>
> public var foo:int;
>   - foo = 42
>
> private var foo:int;
>   - foo$FooClass = 42
>
> internal bar:int;
>   - bar$foo_bar_baz
>
> The above seems like it's going to be pretty universal regardless of what
> production scheme we use. Is there any articles you know about that explain
> JS scope and how it's implemented? Or is that just the ECMA5 specs?
>
> Mike
>
>
>
>
>
>
> --
> Michael Schmalle - Teoti Graphix, LLC
> http://www.teotigraphix.com
> http://blog.teotigraphix.com
>
>