Description
A simply way to extend numerical types to add infinity. Includes 4 data types:Both infinities: GADTPositive infinity only: GADTBoth infinities, represented as upper and lower bound of type (well almost)Positive infinity only, represented as upper bound of typeThere's also rewrite rules in an attempt to make this all work as efficiently as possible (although unbenchmarked and untested)
Description
A simply way to extend numerical types to add infinity.
Includes 4 data types:
Both infinities: GADT
Positive infinity only: GADT
Both infinities, represented as upper and lower bound of type (well almost)
Positive infinity only, represented as upper bound of type
There's also rewrite rules in an attempt to make this all work as efficiently as possible (although unbenchmarked and untested).