I do not understand why you want to use Natural or Integer . Why not use Rational instead? This is arbitrary precision, optimized representation of runtime and works for the natural, wholesome and rational!
My point is that we should choose a type that makes sense semantically. Allows you to count houses on the street with straights, record our next golf game with integers, and share a fresh blueberry pie with rationality.
erisco
source share