Juriy Zaytsev
prototype.js core developer
Javascript maniac, Prototype developer, clean code junkie
ajax
http://twitter.com/kangax
http://perfectionkills.com/
524 followers
1371 tweets
kangax
Well that was quick. Here's a more or less perfect explanation of Javascript quiz posted earlier — http://bit.ly/afis0D (thanks @cmsalvado )
kangax
Today's browser stats on a blog show that FF 3.6 already surpassed previous versions. Nice update speed, but not quite as fast as Chrome.
kangax
Javascript quiz (http://perfectionkills.com/javascript-quiz/). What's your score?
kangax
ES5 is slowly spreading around. FF 3.7 now has `Object.create` (also in WebKit) and `Array.isArray` (also in WebKit & Opera).
kangax
Validome appears to be a more intelligent (X)HTML validator, comparing to W3C one or others — http://j.mp/b1ObBU
kangax
And @jdalton comes up with a version 41 chars less than mine :) (safer version — 25 less) http://gist.github.com/296128 Thanks, everyone!
kangax
Garrett came up with a brilliant workaround for Safari 2 inability to fire "load" on SCRIPT elements— use image instead (http://j.mp/9slTco)
kangax
It's clear now that JSLint is not fully conforming ES parser. Fails: `x=/x/g//f` `x=1,2` `x=1/ /x/` `x=void 0` `throw x=1` `var \u005F=1`
kangax
Firebug console doesn't hoist function declarations. `alert(typeof f); function f(){}` alerts "undefined". Lovely.
kangax
Speaking of `arguments` performance, here's a simple example of how bad it is: http://j.mp/c50aqb (in at least Safari, Opera and FF <3.6)
kangax
It really seems like JSLint can't parse some valid ECMAScript programs. E.g.: `1/ /x/` terminates scanning, instead of returning `NaN`.
kangax
Nice overview of Javascript speedups in FF 3.6 (http://bit.ly/bU8tSD). Btw, `arguments` are still very slow in many browsers.
kangax
There's a lot of ECMAScript parsers, but none written in ECMAScript itself? Narcissus doesn't count, as it relies on SpiderMonkey extensions
kangax
People seem to _love_ unrelated inference. Two popular client-storage libraries branch to IE's userData when ActiveXObject is present. Ugh.
kangax
We need smth. like PPK's compat. tables, but open sourced, to keep content up to date. 1/2-yr-old info is not too useful: http://j.mp/dyxKhR
kangax
ES committee is not planning to release HTML version of specs (http://bit.ly/98XbPK). I guess we'll have to do it ourselves :)
kangax
Sad to see people leave comp.lang.javascript. If you don't participate, at least read the archives (that's how I truly learned most of JS).
kangax
Too bad ES5 `Object.keys` (already in Chrome and WebKit) differs from Prototype's counterpart (ES5 one returns only _own_ properties)
kangax
And doesn't respect overwrites, transforming `Array = customArray; alert(new Array());` to `Array = customArray; alert([]);` :/
kangax
Closure Compiler is still full of oversights. Transforms `new Array()` to `[]` but not `Array()` to `[]` or `new Array(1,2)` to `[1,2]`
kangax
Btw, shortest valid HTML 4.01 document is "" SGML SHORTTAG, ftw!
kangax
It's strange that Chrome still doesn't support page cache (http://bit.ly/b9Ociq), and is missing out on such important optimization.

