[Haskell-cafe] ANN: LogFloat 0.9

wren ng thornton wren at freegeek.org
Sat Aug 30 00:48:22 EDT 2008


--------------------------------------------
-- Announcing: logfloat 0.9.1
--------------------------------------------

New official release of the logfloat package for manipulating log-domain 
floating numbers. This release is mainly for those who are playing with 
Transfinite rather than LogFloat, but the interface changes warrant a 
minor version change.

If you're just using the LogFloat stuff you shouldn't notice any changes 
except that the constructors/destructors may be a bit pickier about 
being used when a polymorphic return type is expected.


--------------------------------------------
-- Changes
--------------------------------------------

* John Meacham pointed out that the Num and Ord superclasses on 
Transfinite may be onerous due to the growing disaffection with the 
Prelude. The Num requirement has been lifted, and the Ord requirement 
has been weakened to the new PartialOrd class.

* Introduced a new class for partially ordered types: PartialOrd.

* The transfinite-value respecting logarithm has been moved from 
Data.Number.LogFloat to Data.Number.Transfinite because it's more 
appropriate there. (It's still reexported by Data.Number.LogFloat.)

* In the continuing battle between transfinite values and Rationals, 
I've added a new class RealToFrac for overloading the Prelude's 
realToFrac function. On GHC, primitive converters are used to improve 
both performance and correctness. For non-GHC compilers, only a few 
generic instances are given. For an older discussion on this topic, see:

http://www.haskell.org/pipermail/haskell-prime/2006-February/000791.html

* Due to all this development on trying to solve the issues of 
transfinite values, the "stability" of the package has been changed from 
stable to provisional.


--------------------------------------------
-- Future Extensions
--------------------------------------------

* A strict version. The current lazy version will move to 
Data.Number.LogFloat.Lazy, and the strict version will be the standard 
one in Data.Number.LogFloat

* A signed version in Data.Number.LogFloat.Signed

* A test suite


--------------------------------------------
-- Links
--------------------------------------------

Homepage:
     http://code.haskell.org/~wren/

Hackage:
     http://hackage.haskell.org/cgi-bin/hackage-scripts/package/logfloat

Darcs:
     http://code.haskell.org/~wren/logfloat

Haddock (Darcs version):
     http://code.haskell.org/~wren/logfloat/dist/doc/html/logfloat/

-- 
Live well,
~wren


More information about the Haskell-Cafe mailing list