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
precaching 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 Internal modules of other libraries, and a very small
dependency footprint in general.