[Haskell-cafe] Positive integers

Jan-Willem Maessen jmaessen at alum.mit.edu
Mon Mar 27 09:04:35 EST 2006


On Mar 26, 2006, at 4:35 PM, Daniel McAllansmith wrote:
> [Discussion of positive integers and Words]

> I was thinking about several things in this thread, torsors, overflow
> semantics, bounds checking...
> I wonder if there would be any merit in being able to define  
> constrained
> subsets of integers and the semantics when/if they overflow.

Oddly, I've just finished coding this up, with type-level bounds  
(represented by type-level ints).  It's a big pile of modules on top  
of John Meacham's type-level Nats library, which add type-level Ints  
(as non-normalized Nat pairs), unknown endpoints (permitting Integer  
to fit in the same framework), and the actual bounded ints themselves.

Naturally, I needed to define my own versions of the functionality in  
Eq, Ord, and Num.  These resolve statically as much as possible  
(including some possibly dubious behavior with singleton intervals).   
That said, I don't try to do everything at the type level---it became  
too tiring, with not enough plausible benefit.

Any and all: Drop me a line if you are interested, it's a stack of  
3-4 modules and at best half-baked.  I'd just gotten a mostly- 
complete version.

-Jan-Willem Maessen




More information about the Haskell-Cafe mailing list