bin: Bin: binary natural numbers.

[ data, dependent-types, gpl, library, math, singletons ] [ Propose Tags ] [ Report a vulnerability ]

This package provides binary natural numbers (Data.Bin); also utilities to work on the type level with DataKinds (Data.Type.Bin).

data Bin
    = BZ       -- ^ zero
    | BP BinP  -- ^ non-zero

data BinP
    = BE       -- ^ one
    | B0 BinP  -- ^ double
    | B1 BinP  -- ^ double plus 1

There are ordinals in Data.Bin.Pos module, as well as fixed width integers in Data.Wrd.

Another implementation is at https://hackage.haskell.org/package/nat, this differs in naming, and provides promoted variant.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.4.1
Change log ChangeLog.md
Dependencies base (>=4.12.0.0 && <4.23), boring (>=0.2.2 && <0.3), deepseq (>=1.4.4.0 && <1.6), fin (>=0.3.1 && <0.4), hashable (>=1.4.4.0 && <1.5 || >=1.5.0.0 && <1.6), QuickCheck (>=2.14.2 && <2.16 || >=2.18.0.0 && <2.19), some (>=1.0.6 && <1.2) [details]
Tested with ghc ==8.6.5 || ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.6 || ==9.8.4 || ==9.10.3 || ==9.12.2 || ==9.14.1
License GPL-2.0-or-later
Copyright (c) 2019-2021 Oleg Grenrus
Author Oleg Grenrus <oleg.grenrus@iki.fi>
Maintainer Oleg.Grenrus <oleg.grenrus@iki.fi>
Uploaded by phadej at 2026-05-10T21:59:22Z
Category Data, Dependent Types, Singletons, Math
Home page https://github.com/phadej/vec
Bug tracker https://github.com/phadej/vec/issues
Source repo head: git clone https://github.com/phadej/vec.git(bin)
Distributions Arch:0.1.4, LTSHaskell:0.1.4
Reverse Dependencies 5 direct, 8720 indirect [details]
Downloads 9207 total (18 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2026-05-10 [all 1 reports]