floating: Add hyperbolic trigonometric functions.
[altfloat.git] / Data / Floating.hs
blobfa8cd5a0292c306ab368ed29296f3689faf2cab3
1 module Data.Floating (
2 module Data.Floating.Classes,
3 module Data.Floating.Double,
4 module Data.Floating
5 ) where
7 import Prelude hiding (RealFloat(..))
8 import Data.Floating.Classes
9 import Data.Floating.Double
11 import Control.Monad
13 isInfinite :: RealFloat a => a -> Bool
14 isInfinite = (== FPInfinite) . classify
16 isNaN :: RealFloat a => a -> Bool
17 isNaN = (== FPNaN) . classify
19 isNormal :: RealFloat a => a -> Bool
20 isNormal = (== FPNormal) . classify
22 isSubNormal :: RealFloat a => a -> Bool
23 isSubNormal = (== FPSubNormal) . classify
25 isFinite :: RealFloat a => a -> Bool
26 isFinite = liftM2 (||) isNormal isSubNormal