binary-typed: Type-safe binary serialization
Binary serialization tagged with type information, allowing for
typechecking and useful error messages at the receiving site.
This package serves the same purpose as tagged-binary, with a couple of key differences:
Support of different kinds of serialized type annotations, each with specific strengths and weaknesses.
Error messages can provide details on type errors at the cost of longer message lengths to include the necessary information.
Serialization computationally almost as efficient as Data.Binary when sharing type representations; decoding however is slower. These values obviously depend a lot on the involved data and its type; an example benchmark is shown in the picture below.
No depencency on
Internalmodules of other libraries, and a very small dependency footprint in general.
For information about usage, see the Data.Binary.Typed.Tutorial module.
Performance-wise, here is a value
Right (Left <100 chars lipsum>) of
Either (Char, Int) (Either String (Maybe Integer)) benchmarked
Hashed64 type representation:
|Versions||0.1.0.0, 0.1.0.1, 0.2.0.0, 0.2.0.1, 0.2.1.0, 0.2.2, 0.2.3, 0.3, 1.0 (info)|
|Dependencies||base (>=4.7 && <4.10), binary (>=0.7), bytestring (>=0.9), murmur-hash (>=0.1) [details]|
|Maintainer||dluposchainsky on googles email service|
|Revised||Revision 1 made by HerbertValerioRiedel at Mon Jul 31 09:33:34 UTC 2017|
|Source repo||head: git clone https://github.com/quchen/binary-typed|
|Uploaded||by quchen at Tue Jul 29 18:10:49 UTC 2014|
|Downloads||4544 total (49 in the last 30 days)|
|Rating||(no votes yet) [estimated by rule of succession]|
Docs uploaded by user [build log]
All reported builds failed [all 1 reports]
- binary-typed-0.2.2.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.
For package maintainers and hackage trustees