Re: JavaScript engines



JSCore is open to all these extensions, and they are on the slate to be
implemented, just not a priority. It's somewhat likely I could end up
implementing some of them, as a few would be nice to have in Seed.

Long term though I think there are considerations that have to be
considered beyond "Which one supports yield/let today!". Notably, the
general push towards WebKit migration (as in, migrating all GNOME modules 
to WebKit), speed/memory differences, and potential speed/memory
differences in the future.

Once these JS extensions are implemented in JSCore, it would essentially
be a faster spider/tracemonkey, with a cleaner API, so it would be a
shame to have decided on Mozilla prematurely.

==============Original message text===============
On Tue, 06 Jan 2009 12:30:25 EST Johan Dahlin wrote:

Jason D. Clinton wrote:
> On Tue, Jan 6, 2009 at 11:14 AM, Johan Dahlin <johan gnome org> wrote:
>> The language is pretty different, SpiderMonkey supports quite a few
>> /language/ extensions which JSCore doesn't.[1][2][3]
> 
> s/doesn't./doesn't yet./g

I don't think JSCore is going to implement all features present in 
Spidermonkey since they have a different use case. WebKit/JSCore uses 
javascript mainly to run scripts found on web pages. Spidermonkey is
different as it's in addition to that is used to develop native applications 
(firefox, thunderbird etc). In other words, JSCore (V8 & JScript etc) will 
reasonably only support what web pages actually uses. So sure, the language 
extensions present in Spidermonkey might eventually be supported in other 
engines, but /only/ if web pages actually start to use them.

Anyway, what subset of JS that's going to be used in the newest and fanciest 
web pages seems like a less than ideal criteria to use to select a 
javascript engine for GNOME. Instead we should compare what's available, 
which will help developers to write great applications *today*.

Johan

===========End of original message text===========





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]