@hackage data-nat0.1

data Nat = Zero | Succ Nat

The usual data Nat = Zero | Succ Nat datatype with the appropriate instances.

Should be portable to any Haskell 98 compiler which supports the CPP extension.