fin: Nat and Fin

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.


This package provides two simple types, and some tools to work with them. Also on type level as DataKinds.

data Nat = Z | S Nat
data Fin (n :: Nat) where
Z :: Fin n
S :: Fin n -> Fin ('Nat.S n)

Differences to other packages:


Versions0, 0, 0.0.1, 0.0.2, 0.0.3, 0.1, 0.1.1
Dependenciesbase (>=4.7 && <4.11), deepseq (>= && <1.5), hashable (>= && <1.3), nats (>=1 && <1.2) [details]
Copyright(c) 2017 Oleg Grenrus
AuthorOleg Grenrus <>
MaintainerOleg.Grenrus <>
Home page
Bug tracker
Source repositoryhead: git clone
UploadedSun Nov 19 18:05:13 UTC 2017 by phadej




Maintainers' corner

For package maintainers and hackage trustees