Hello Duncan,

Thursday, June 21, 2007, 8:48:53 AM, you wrote:

>> > The smallest possible would be 2 words overhead by just using a
>> > ByteArray#,
>> 
>> i tried it once and found that ByteArray# size is returned rounded to 4 -
>> there is no way in GHC runtime to alloc, say, exactly 37 bytes. and
>> don't forget to add 2 unused bytes at average

> Right, GHC heap object are always aligned to the natural alignment of
> the architecture, be that 4 or 8 bytes.

> Try the same experiment with C's malloc. I'd be very surprised if you
> can allocate 37 bytes and not end up using 40 (plus some extra for
> remembering the allocation length).

that i'm trying to say is that one need to store exact string size
because value returned by getSizeOfByteArray is aligned to 4

-- 
Best regards,
 Bulat                            mailto:[EMAIL PROTECTED]

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

Reply via email to