[Haskell-cafe] Binary and Serialize classes

Evan Laforge qdunkan at gmail.com
Tue May 3 04:55:01 CEST 2011

> 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.

More information about the Haskell-Cafe mailing list