
Ketil Malde
Then you get the memory behavior you ask for. Unevaluated strings are extremely expensive, something like 12 bytes per char on 32 bit, twice that on 64 bits, and then you need GC overhead, etc. ByteStrings are much better, but you then probably need to implement your own XML parsing.
My lazy chunks have type ByteString -> Object. Only internally they use ByteString.unpack to get the list of Word8s to parse them. My parser is totally my own so I can do anything I wish. Except it is hard for me to image a parser working on something else than [Word8]. How do I do this? So how do I get rid of those (:) and W8# that are allocated everywhere on my heap? Thanks for the suggestion for -hd, really useful option! -- Gracjan