On Thu, Jun 21, 2007 at 04:36:13AM +0100, Duncan Coutts wrote:
> The smallest possible would be 2 words overhead by just using a
> ByteArray#, but that sacrifices O(1) substring which is pretty important
> for a functional style.

Not necessarily the minimum!

data String
    = S0
    | S1 Word
    | S2 Word
    | S3 Word
    | S4 Word
    | S5 Word Word
    | S6 Word Word
    | S7 Word Word
    | S8 Word Word
    | S9 Word Word Word
    | S10 Word Word Word
    | S11 Word Word Word
    | S12 Word Word Word
    | S13 Word Word Word Word
    | S14 Word Word Word Word
    | S15 Word Word Word Word
    | S16 Word Word Word Word
    | S17 Word Word Word Word Word
    | S18 Word Word Word Word Word
    | S19 Word Word Word Word Word
    | S20 Word Word Word Word Word
    | SLong ByteArray#

Stefan
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to