Paul Rubin <no.email@nospam.invalid> writes:

> Steven D'Aprano <steve+comp.lang.pyt...@pearwood.info> writes:
>> it too will mess up sorting in unpredictable ways. So don't do that.
>
> Hmm.  GHCi 7.4.2:
>
>     Prelude> let x = 0.0 / 0.0
>     Prelude> x
>     NaN
>     Prelude> x==x
>     False
>     Prelude> :m Data.List
>     Prelude Data.List> sort [1,2,x,4,5]
>     [1.0,2.0,4.0,5.0,NaN]

But

  Prelude Data.List> sort [1,x,2,4,5]
  [2.0,4.0,5.0,NaN,1.0]

and

  Prelude Data.List> sort [1,2,x,4,5,x]
  [NaN,1.0,2.0,4.0,5.0,NaN]

and

  Prelude Data.List> sort [1,2,x,4,5,x,1/0]
  [1.0,2.0,4.0,Infinity,NaN,5.0,NaN]

> Not sure what to make of this but at least sorting seems to give a
> predictable result.

I suspect it is predictable if you know the algorithm, but I doubt it's
specified nor easily guessable from "outside".

(GHCi, version 8.0.2 here)

-- 
Ben.
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to