Standard Prelude - Floating Class
Lennart Augustsson
lennart@augustsson.net
Tue, 16 Oct 2001 17:08:58 +0200
Jerzy Karczmarczuk wrote:
> Did Joe Fasel include this consciously? If yes,
> my respect - already almost infinite, is even bigger now).
I'm pretty sure he did, but he can speak for himself. I know he
discussed these things with his numerical collegues when designing
the prelude.
Look at this definition (from Complex, by Joe) for instance
instance (RealFloat a) => Fractional (Complex a) where
(x:+y) / (x':+y') = (x*x''+y*y'') / d :+ (y*x''-x*y'') / d
where
x'' = scaleFloat k x'
y'' = scaleFloat k y'
k = - max (exponent x') (exponent y')
d = x'*x'' + y'*y''
The scaleFloat calls are there for numeric reasons.
-- Lennart