[Haskell-cafe] ANNOUNCE: binary-generic-0.2,
generic binary serialisation using binary and syb.
Lars Petersen
info at lars-petersen.net
Fri Aug 20 17:38:31 EDT 2010
Hello cafe,
although there was no announcement for version 0.1 there is one for
the current 0.2:
binary-generic allows to perform binary serialisation without
explicitly defining every type specific case.
If an algebraic type instantiates the 'Data' class the library is able
to serialize it in a canonical way.
Unfortunately version 0.2 is not binary compatible with 0.1. I decided
to break this for the sake of simplicity: In 0.2 all multibyte values
are encoded big-endian. For further version I'll try to supply
compatibility functions even if something changes, but since 0.1 is not
even a week old, I think it's not necessary this time.
Okay, features: Common primitive types are supported out of the box:
* Char, Word, Int are serialised as big-endian, taken from Data.Binary
* Float and Double are serialised big-endian according to
binary-ieee754
* Integer is serialized as in Data.Binary, but consistently big-endian
* Data.ByteString as it is
* Data.Text as Utf8
For types that are not supported yet, there is described an easy way
of extension in 'Data.Binary.Extensions'. You are also free to ovveride
certain choices and supply your own.
If you think there are more types that should be supported without
explicit extension, drop me a line.
Cheers,
Lars
More information about the Haskell-Cafe
mailing list