Well,

I feel like one, because only FalconJS subject activated me on this list :)

And to eliminate the 'IF' from your conditional statement, just a quick one:

http://jsperf.com/jqury-vs-plainjs

Dan

On 11/28/2012 10:26 PM, Michael Schmalle wrote:
Hey,

Your not an outsider, everything I have read of yours is golden. At least you are trying to explain this stuff to people who don't have a lot of js experience.

If what you are saying about jQuery and performance is true then;

"I do believe that it is possible to make a easy to develop environment and spit out efficient code on the other side. And not many ongoing development in this area has as much opportunity to get something done well as Apache has at the moment."

I couldn't agree more. Sometimes being an infant has it's advantages in a new world because you don't have any bad habits yet!


Mike




Quoting Daniel Wasilewski <devudes...@gmail.com>:

I can spare my free time on this, Possibly not on Apache contributor level because I am total noob when comes to it. I don't even managed to set up my environment for flexSDK ;) But this is because I've got AIR corrupted and some windows x86 redistributable corupted libs blabla, the only reasonable solution is to go for fresh Windows installation. Hell no...!! ;)

I am not JS guru, but would like to get involved and do my best even as outsider. I was digging into JS for past year just to investigate the possibilities. Mostly from performance point of view and mobile development.


In regards to instanceof:


Here is something that haxe is using

js.Boot.__instanceof = function(o,cl) {
    try {
        if(o instanceof cl) {
            if(cl == Array) return o.__enum__ == null;
            return true;
        }
        if(js.Boot.__interfLoop(o.__class__,cl)) return true;
    } catch( e ) {
        if(cl == null) return false;
    }
    switch(cl) {
    case Int:
        return Math.ceil(o%2147483648.0) === o;
    case Float:
        return typeof(o) == "number";
    case Bool:
        return o === true || o === false;
    case String:
        return typeof(o) == "string";
    case Dynamic:
        return true;
    default:
        if(o == null) return false;
        if(cl == Class && o.__name__ != null) return true; else null;
        if(cl == Enum && o.__ename__ != null) return true; else null;
        return o.__enum__ == cl;
    }
}


having something like that implemented

'is' is as easy as:

Std["is"] = function(v,t) {
    return js.Boot.__instanceof(v,t);
}

But obviously, it needs to live within rest of the sugar :).

Are you able to provide the list of stuff/fields that compiler is expecting to meet on the other side?

Dan


On 11/28/2012 9:42 PM, Alex Harui wrote:


On 11/28/12 1:35 PM, "Daniel Wasilewski" <devudes...@gmail.com> wrote:

So, please tell me why not to go the classic route as a very little overhaul
for the application that can be built on top of AS3/Flex?
This is bloody 3 classes with 4 methods in it, and we are not talking here
about few % but tens.
It can only grow exponentially to the scale of your project.
I don't know enough to have an reason not to go the classic route.  But
someone else will have to step up to do the work.

That said, because we are cross compiling AS, does the classic route support as many features of AS, especially the reflection-oriented features? We want to try to compile business logic untouched and it might be using "is", "in", "instanceof", etc. Resig's blog seems to indicate that support for
instanceOf was important and required all of that code.

Dan





Reply via email to