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.
Very small performance overhead compared to using standard
Binary
due to caching when using hashed type information. Since shown and full types are not cached, decoding them has a significant performance hit (ballpark: factor of two).No depencency on
Internal
modules 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
type Either (Char, Int) (Either String (Maybe Integer))
benchmarked
using the Hashed64
type representation:
Modules
[Index]
Downloads
- binary-typed-1.0.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'.
Versions [RSS] | 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) |
---|---|
Change log | changelog.md |
Dependencies | base (>=4.7 && <4.10), binary (>=0.7), bytestring (>=0.9), murmur-hash (>=0.1) [details] |
Tested with | ghc ==7.8.4, ghc ==7.10.2, ghc ==7.10.3 |
License | BSD-2-Clause |
Copyright | David Luposchainsky <dluposchainsky on googles email service> |
Author | David Luposchainsky <dluposchainsky on googles email service> |
Maintainer | David Luposchainsky <dluposchainsky on googles email service> |
Revised | Revision 1 made by HerbertValerioRiedel at 2017-07-31T09:37:02Z |
Category | Data, Serialization |
Home page | https://github.com/quchen/binary-typed |
Bug tracker | https://github.com/quchen/binary-typed/issues |
Source repo | head: git clone https://github.com/quchen/binary-typed |
Uploaded | by quchen at 2015-12-19T20:58:32Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Downloads | 8763 total (37 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2015-12-19 [all 1 reports] |