> I'm a bit skeptical of adding builders for different variable length > encodings to the library, simply because there are so many > possibilities. I think creating a binary-vle (for variable length > encoding) package would be worthwhile. I have an implementation of the > VLE used in protocol buffers.
I didn't necessarily mean the general notion of variable length encodings, I just meant the encodings for the built-in types that are a little more complex than most. For example, export a putInteger that's documented to not change its encoding. Same for putString, and even trivial ones like putPair, putEtcEtc. Then you'd have to declare a bunch of boilerplate like 'instance MySerialize Integer where put = putInteger'. It would be annoying, but less annoying than copying the contents of putInteger everywhere, and you'd be guaranteed to be explicitly depending on all your implementations, so you could either use ones explicitly documented to be consistent, or write your own. _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe