The specification does not require the sort to be stable (in fact, it specifically says it doesn't have to be stable). The Compare function is defined in the preceding code. It treats undefined specially, and then, if there is a user provided comparison function it uses that, otherwise it does string conversion and comparison. /L
On Wed, Sep 24, 2008 at 5:39 PM, William Hesse <[EMAIL PROTECTED]> wrote: > There is no problem about the sort being stable or not, is there? Is the > compare always the built-in > arithmetic one? > > On Wed, Sep 24, 2008 at 2:34 PM, <[EMAIL PROTECTED]> wrote: > >> >> LGTM, except for the following comments. >> >> >> >> http://codereview.chromium.org/4065/diff/1/2 >> File src/array.js (left): >> >> http://codereview.chromium.org/4065/diff/1/2#oldcode724 >> Line 724: if (IS_ARRAY(this)) { >> This piece of code should still be needed. If we remove array holes, we >> have to restore the length afterwards. >> >> http://codereview.chromium.org/4065/diff/1/2 >> File src/array.js (right): >> >> http://codereview.chromium.org/4065/diff/1/2#newcode674 >> Line 674: var pivot_index = global.Math.floor(global.Math.random() * (to >> - from)) + from; >> We need to make sure that we use the original Math.floor and Math.random >> so that user-defined versions of Math.random do not interfere with this >> code. See for instance date-delay.js that introduces and uses $floor >> and $abs for the original versions of Math.floor and Math.abs. >> >> http://codereview.chromium.org/4065 >> >> >> > > > -- > We can IMAGINE what is not > > > > -- Lasse R.H. Nielsen [EMAIL PROTECTED] 'Faith without judgement merely degrades the spirit divine' --~--~---------~--~----~------------~-------~--~----~ v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev -~----------~----~----~----~------~----~------~--~---
