On Fri, 24 Mar 2006, Malcolm Wallace wrote:

Daniel McAllansmith <[EMAIL PROTECTED]> wrote:

Unless I've missed it, there is no typeclass for positive integers in
GHC. Is there any particular reason it doesn't exist?

Also, it seems Word would be a far better type in the likes of (!!),
length,  etc.  Is it just tradition that resulted in the use of Int?

There is a good argument that what you really want here is the lazy
infinite natural numbers.  Think Peano:

   data Natural = Zero | Succ Natural

The clear correspondance between lazy lists and the size/index of a lazy
list makes this type fairly compelling.  It can be jolly useful,
particularly with infinite streams, to be able to compute
   (length xs > n)
without forcing the evaluation of the list to more than n places.

Fortunately there are already List functions like genericLength and genericTake, which can handle such a number type. Shouldn't be Peano numbers part of the standard libraries?
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to