borsh: Implementation of BORSH serialisation

[ bsd3, codec, library ] [ Propose Tags ]

This package provides type classes and combinators for serialisation/deserialisation to/from Borsh format. Unlike CBOR, Borsh is a non self-describing serialisation format. It is designed such that any object serialises to a canonical and deterministic string of bytes.

The library supports incremental encoding and incremental decoding, and supports the use of the ST monad in the decoder for efficient decoding for types such as arrays. However, the library has currently not been optimized for speed, and there may well be low-hanging fruit to make it faster.


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

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1.0, 0.2.0, 0.3.0
Change log
Dependencies base (>=4.12 && <4.18), bytestring (>=0.10 && <0.12), containers (>=0.6 && <0.7), generics-sop (>=0.5 && <0.6), sop-core (>=0.5 && <0.6), text (>=1.2 && <2.1), vector (>=0.13 && <0.14), wide-word (>=0.1 && <0.2) [details]
License BSD-3-Clause
Author Edsko de Vries, Finley McIlwaine
Revised Revision 1 made by EdskoDeVries at 2023-03-20T12:36:31Z
Category Codec
Bug tracker
Source repo head: git clone
Uploaded by EdskoDeVries at 2023-03-17T14:20:21Z
Downloads 189 total (12 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2023-03-17 [all 1 reports]