Changelog of @hackage/basesystems 1.0.0.0

Hackage basesystems package change log:

Version 1.0.0.0

Finally initialize git repository! This version introduces the package to the Hackage repository and the provides an interface for encoding/decoding digit strings in several common numeric basesystems. Namely, this version provides the following modules for processing this data:

Data.BaseSystem

Provides the type-class for BaseSystem and the encoder and decoder methods and generic implementations for 2 kinds of basesystems:

  • RadixSystem for typical basesystems such as base10
  • BitwiseSystem for special basesystems such as base64 and base32

Data.BaseSystems:

Defines common basesystems using the definitions found in Data.BaseSystem.Alphabets. See the project source code for the names of currently provided implementations.

Other modules:

  • Data.BaseSystem.Alphabet data structure definition for basesystem digit alphabets and methods for querying alphabet information.
  • Data.BaseSystem.Alphabets definitions for specific digit alphabets for implementing basesystems.
  • Data.BaseSystem.Internal provides useful methods used across modules. For example the packInteger and bytesToInteger provides ways to convert Integers to ByteString and vice-versa, which is handy for GHCi and unit tests (so that we don't have to write numbers as ByteStrings before using the encoders or decoders).