"Eric Mahurin"  wrote in message 
news:29256ea00709031847ua14d891k810fe28236d6edd9 / mail.gmail.com...

> CPU(user+sys,sec)   mem(peak,MB)
> ------------------- ------------
> build  sort  total build  sort  class
> -----  ----  ----- -----  ----  -----
>  0.10  1.70   1.80   287  1327  String
>  0.01  0.27   0.28    22   153  Porth::Rope
>  0.02  0.83   0.85    22    34  Choudhury::Rope *
>  0.02  0.06   0.08    22    29  Mahurin::StringRope +
>  0.00  0.08   0.08    22    30  Mahurin::DenormalStringRope +
>  0.02  0.14   0.16    22    29  Mahurin::MutableStringRope
>  0.07  0.10   0.17   151   151  Munkby::ArrayRope
>  0.02  0.73   0.75    22   655  Kalenkovich::Rope *
>
> CPU : minimum from 40 iterations
> mem : peak over the 40 iterations
>
> * : self-checking failed
> + : immutable benchmark needed

Eric, thanks a lot for your test, it helped me to find a bug in my solution. 
The only thing I do not understand - you've changed the game rules on flight 
by making "data = data.normalize" instead of "data.normalize". I'm wondering 
how could you get sorting time > 0 for my solution (as it played by old 
rules and would give you nothing for such assignment)? :)

Anyway, I'm posting a fixed solution (for the bug and for your test) in the 
next message, and I'd appreciate if you can re-run it

-- EK