Talk:Comparison of layout engines (ECMAScript)
From Wikipedia, the free encyclopedia
Contents |
[edit] Started
I have started this article. All help is appreciated!
Facts must be checked.
References are missing!
The table is only in its infancy. Loads of stuff are missing.
--itpastorn 14:05, 6 March 2007 (UTC)
[edit] To do list
- Replace a lot of question marks with support information.
Info about all other layout engines but Presto and Gecko are missing- "Since version number" info is missing
- General fact checking
- Add syntax support table as well as standards library
- ECMAScript 4 preliminary information. See http://spreadsheets.google.com/pub?key=pFIHldY_CkszsFxMkQOReAQ&gid=2
--itpastorn 12:51, 27 March 2007 and again 15 Jan 08 and liorean 16:53, 30 March 2007 (UTC)
[edit] Discussion
[edit] Syntax too?
The entire standards library of ECMA-262 3ed including non-normative additional properties are now in the table.
I don't think just the standards library is enough though. We should add a separate table for syntax as well.
Should engine specific standard library and syntax be added as well?
--liorean 16:53, 30 March 2007 (UTC)
[edit] [Constructor] .prototype.length properties
I've added three .prototype.length properties to the table, Function.prototype.length, Array.prototype.length and String.prototype.length. Of those the Array.prototype.length property is specified in the ECMAScript spec directly, though not in a section of it's own (which is why I missed it originally). The Function.prototype.length and String.prototype.length properties are NOT mentioned as existing in the ECMAScript specification. So them being part of ECMAScript is up for debate. I'll give my reasons for including them here:
- String.prototype is the empty string, and the empty string SHOULD have a length of 0.
- Function.prototype is a function taking any arguments returning undefined. Functions should have a length property equivalent to the number of formal parameters they have unless explicitly stated otherwise, so Function.prototype SHOULD have a length of 0.
However, as mentioned both these properties are not explicitly stated out in the spec. -- liorean 00:24, 8 June 2007 (UTC)
[edit] Should futhark really be included?
I can't find any mention of futhark anywhere, the linked article seems very unsure of exactly what version it is in or going to be in. The article of futhark has external links but none of them mention futhark. If it is a future version I don't think it should be included because in the other Comparison of articles they deal only in the latest public versions. -- Gudeldar 15:38, 13 June 2007 (UTC)
- Futhark is included in Opera Kestrel. IIRC the Wii Internet Channel is a Kestrel build, or at least it contains some of the new stuff from Kestrel (Which might not include futhark, of that I'm uncertain). Opera Mini 4 beta is a Kestrel build. The next Opera desktop version (9.5?) will be a Kestrel and not a Merlin build. If you read Opera Desktop Team - Kestrel is coming! you'll find the following passages: "Within a few weeks we will publish 9.5 weeklies on this blog so everyone can start playing with it." and "This includes /.../ a brand new javascript engine with support for ECMAScript 4 'getters' and 'setters'." The brand new javascript engine he's talking about is futhark. If we remove futhark from the tables now, it will have to be added back again in a few weeks or months when the first public previews are released at Opera Software - Beta testing or weeklies on the Opera Desktop Team blog. On the other hand you're right, there's no Opera desktop build with futhark in it yet. -- liorean 22:35, 27 June 2007 (UTC)
- Perhaps we should merge futhark and linear_b into one column named futhark/linear_b and use the version number of Opera (the way linear_b is identified now) to identify which one support started in, to prevent the table from becoming too verbose -- Gudeldar 13:56, 29 June 2007 (UTC)
[edit] Rename article?
It might be more appropriate to use the title "Comparison of ECMAScript Engines" for this article, and include engines such as Rhino, ASC, ES4RI, JScript.NET. The connection between layout engines and ES engines could be moved to the introduction instead of heading each separate table. What do you guys think? -- liorean 02:40, 7 February 2008 (UTC)
- Hi liorean, you are not the only one who think we should remove "layout engines" from the titles of some of the series articles. Grey and I were about to bring this discussion to the public. So, I vote for. --Fenring (talk) 08:38, 7 February 2008 (UTC)
[edit] Sources for data
Just trying to list some sources for data that we could try to fold into these tables, or which they are already partially based upon:
- ECMAScript 4 - Implementation progress
- ECMAScript 4 language overview whitepaper
- ECMAScript 3 spec ECMA hosted version, dated 1999-12. The official standard.
- ECMAScript 3 spec - This is the Mozilla hosted version, dated 2000-03-24. In difference to the ECMA hosted version this one has chapter bookmarks for easy navigation. (I am not aware of any other differences, which does not mean there are none, just that they aren't documented anywhere I've seen them.)
-- liorean 06:26, 27 February 2008 (UTC)