Copyright | (c) The University of Glasgow 1994-2002 Portions obtained from hbc (c) Lennart Augusstson |
---|---|
License | see libraries/base/LICENSE |
Maintainer | [email protected] |
Stability | internal |
Portability | non-portable (GHC Extensions) |
Safe Haskell | Trustworthy |
Language | Haskell2010 |
The types Float
and Double
, the classes Floating
and RealFloat
and casting between Word32 and Float and Word64 and Double.
rationalToFloat :: Integer -> Integer -> Float Source
rationalToDouble :: Integer -> Integer -> Double Source
class Fractional a => Floating a where Source
Trigonometric and hyperbolic functions and related functions.
The Haskell Report defines no laws for Floating
. However, (+)
, (*)
and exp
are customarily expected to define an exponential field and have the following properties:
exp (a + b)
= exp a * exp b
exp (fromInteger 0)
= fromInteger 1
pi, exp, log, sin, cos, asin, acos, atan, sinh, cosh, asinh, acosh, atanh
(**) :: a -> a -> a infixr 8 Source
log1p x
computes log (1 + x)
, but provides more precise results for small (absolute) values of x
if possible.
Since: base-4.9.0.0
expm1 x
computes exp x - 1
, but provides more precise results for small (absolute) values of x
if possible.
Since: base-4.9.0.0
log1pexp x
computes log (1 + exp x)
, but provides more precise results if possible.
Examples:
x
is a large negative number, log (1 + exp x)
will be imprecise for the reasons given in log1p
.exp x
is close to -1
, log (1 + exp x)
will be imprecise for the reasons given in expm1
.Since: base-4.9.0.0
log1mexp x
computes log (1 - exp x)
, but provides more precise results if possible.
Examples:
x
is a large negative number, log (1 - exp x)
will be imprecise for the reasons given in log1p
.exp x
is close to 1
, log (1 - exp x)
will be imprecise for the reasons given in expm1
.Since: base-4.9.0.0
class (RealFrac a, Floating a) => RealFloat a where Source
Efficient, machine-independent access to the components of a floating-point number.
floatRadix, floatDigits, floatRange, decodeFloat, encodeFloat, isNaN, isInfinite, isDenormalized, isNegativeZero, isIEEE
floatRadix :: a -> Integer Source
a constant function, returning the radix of the representation (often 2
)
floatDigits :: a -> Int Source
a constant function, returning the number of digits of floatRadix
in the significand
floatRange :: a -> (Int, Int) Source
a constant function, returning the lowest and highest values the exponent may assume
decodeFloat :: a -> (Integer, Int) Source
The function decodeFloat
applied to a real floating-point number returns the significand expressed as an Integer
and an appropriately scaled exponent (an Int
). If decodeFloat x
yields (m,n)
, then x
is equal in value to m*b^^n
, where b
is the floating-point radix, and furthermore, either m
and n
are both zero or else b^(d-1) <= abs m < b^d
, where d
is the value of floatDigits x
. In particular, decodeFloat 0 = (0,0)
. If the type contains a negative zero, also decodeFloat (-0.0) = (0,0)
. The result of decodeFloat x
is unspecified if either of isNaN x
or isInfinite x
is True
.
encodeFloat :: Integer -> Int -> a Source
encodeFloat
performs the inverse of decodeFloat
in the sense that for finite x
with the exception of -0.0
, uncurry encodeFloat (decodeFloat x) = x
. encodeFloat m n
is one of the two closest representable floating-point numbers to m*b^^n
(or ±Infinity
if overflow occurs); usually the closer, but if m
contains too many bits, the result may be rounded in the wrong direction.
exponent
corresponds to the second component of decodeFloat
. exponent 0 = 0
and for finite nonzero x
, exponent x = snd (decodeFloat x) + floatDigits x
. If x
is a finite floating-point number, it is equal in value to significand x * b ^^ exponent x
, where b
is the floating-point radix. The behaviour is unspecified on infinite or NaN
values.
significand :: a -> a Source
The first component of decodeFloat
, scaled to lie in the open interval (-1
,1
), either 0.0
or of absolute value >= 1/b
, where b
is the floating-point radix. The behaviour is unspecified on infinite or NaN
values.
scaleFloat :: Int -> a -> a Source
multiplies a floating-point number by an integer power of the radix
True
if the argument is an IEEE "not-a-number" (NaN) value
isInfinite :: a -> Bool Source
True
if the argument is an IEEE infinity or negative infinity
isDenormalized :: a -> Bool Source
True
if the argument is too small to be represented in normalized format
isNegativeZero :: a -> Bool Source
True
if the argument is an IEEE negative zero
True
if the argument is an IEEE floating point number
a version of arctangent taking two real floating-point arguments. For real floating x
and y
, atan2 y x
computes the angle (from the positive x-axis) of the vector from the origin to the point (x,y)
. atan2 y x
returns a value in the range [-pi
, pi
]. It follows the Common Lisp semantics for the origin when signed zeroes are supported. atan2 y 1
, with y
in a type that is RealFloat
, should return the same value as atan y
. A default definition of atan2
is provided, but implementors can provide a more accurate implementation.
FFExponent | |
FFFixed | |
FFGeneric |
stgDoubleToWord64 :: Double# -> Word# Source
stgWord64ToDouble :: Word# -> Double# Source
stgFloatToWord32 :: Float# -> Word# Source
stgWord32ToFloat :: Word# -> Float# Source
expm1Float :: Float -> Float Source
log1pFloat :: Float -> Float Source
expm1Double :: Double -> Double Source
log1pDouble :: Double -> Double Source
isDoubleFinite :: Double -> Int Source
isDoubleNegativeZero :: Double -> Int Source
isDoubleDenormalized :: Double -> Int Source
isDoubleInfinite :: Double -> Int Source
isDoubleNaN :: Double -> Int Source
isFloatFinite :: Float -> Int Source
isFloatNegativeZero :: Float -> Int Source
isFloatDenormalized :: Float -> Int Source
isFloatInfinite :: Float -> Int Source
isFloatNaN :: Float -> Int Source
showFloat :: RealFloat a => a -> ShowS Source
Show a signed RealFloat
value to full precision using standard decimal notation for arguments whose absolute value lies between 0.1
and 9,999,999
, and scientific notation otherwise.
formatRealFloat :: RealFloat a => FFFormat -> Maybe Int -> a -> String Source
formatRealFloatAlt :: RealFloat a => FFFormat -> Maybe Int -> Bool -> a -> String Source
roundTo :: Int -> Int -> [Int] -> (Int, [Int]) Source
floatToDigits :: RealFloat a => Integer -> a -> ([Int], Int) Source
floatToDigits
takes a base and a non-negative RealFloat
number, and returns a list of digits and an exponent. In particular, if x>=0
, and
floatToDigits base x = ([d1,d2,...,dn], e)
then
n >= 1
x = 0.d1d2...dn * (base**e)
0 <= di <= base-1
fromRat :: RealFloat a => Rational -> a Source
Converts a Rational
value into any type in class RealFloat
.
fromRat' :: RealFloat a => Rational -> a Source
expt :: Integer -> Int -> Integer Source
expts :: Array Int Integer Source
expts10 :: Array Int Integer Source
integerLogBase :: Integer -> Integer -> Int Source
fromRat'' :: RealFloat a => Int -> Int -> Integer -> Integer -> a Source
plusFloat :: Float -> Float -> Float Source
minusFloat :: Float -> Float -> Float Source
timesFloat :: Float -> Float -> Float Source
divideFloat :: Float -> Float -> Float Source
negateFloat :: Float -> Float Source
gtFloat :: Float -> Float -> Bool Source
geFloat :: Float -> Float -> Bool Source
ltFloat :: Float -> Float -> Bool Source
leFloat :: Float -> Float -> Bool Source
expFloat :: Float -> Float Source
logFloat :: Float -> Float Source
sqrtFloat :: Float -> Float Source
fabsFloat :: Float -> Float Source
sinFloat :: Float -> Float Source
cosFloat :: Float -> Float Source
tanFloat :: Float -> Float Source
asinFloat :: Float -> Float Source
acosFloat :: Float -> Float Source
atanFloat :: Float -> Float Source
sinhFloat :: Float -> Float Source
coshFloat :: Float -> Float Source
tanhFloat :: Float -> Float Source
asinhFloat :: Float -> Float Source
acoshFloat :: Float -> Float Source
atanhFloat :: Float -> Float Source
powerFloat :: Float -> Float -> Float Source
plusDouble :: Double -> Double -> Double Source
minusDouble :: Double -> Double -> Double Source
timesDouble :: Double -> Double -> Double Source
divideDouble :: Double -> Double -> Double Source
negateDouble :: Double -> Double Source
gtDouble :: Double -> Double -> Bool Source
geDouble :: Double -> Double -> Bool Source
ltDouble :: Double -> Double -> Bool Source
leDouble :: Double -> Double -> Bool Source
double2Float :: Double -> Float Source
float2Double :: Float -> Double Source
expDouble :: Double -> Double Source
logDouble :: Double -> Double Source
sqrtDouble :: Double -> Double Source
fabsDouble :: Double -> Double Source
sinDouble :: Double -> Double Source
cosDouble :: Double -> Double Source
tanDouble :: Double -> Double Source
asinDouble :: Double -> Double Source
acosDouble :: Double -> Double Source
atanDouble :: Double -> Double Source
sinhDouble :: Double -> Double Source
coshDouble :: Double -> Double Source
tanhDouble :: Double -> Double Source
asinhDouble :: Double -> Double Source
acoshDouble :: Double -> Double Source
atanhDouble :: Double -> Double Source
powerDouble :: Double -> Double -> Double Source
word2Double :: Word -> Double Source
word2Float :: Word -> Float Source
:: RealFloat a | |
=> (a -> ShowS) | a function that can show unsigned values |
-> Int | the precedence of the enclosing context |
-> a | the value to show |
-> ShowS |
clamp :: Int -> Int -> Int Source
castWord32ToFloat :: Word32 -> Float Source
castWord32ToFloat w
does a bit-for-bit copy from an integral value to a floating-point value.
Since: base-4.10.0.0
castFloatToWord32 :: Float -> Word32 Source
castFloatToWord32 f
does a bit-for-bit copy from a floating-point value to an integral value.
Since: base-4.10.0.0
castWord64ToDouble :: Word64 -> Double Source
castWord64ToDouble w
does a bit-for-bit copy from an integral value to a floating-point value.
Since: base-4.10.0.0
castDoubleToWord64 :: Double -> Word64 Source
castFloatToWord32 f
does a bit-for-bit copy from a floating-point value to an integral value.
Since: base-4.10.0.0
Single-precision floating point numbers. It is desirable that this type be at least equal in range and precision to the IEEE single-precision type.
Enum Float | Since: base-2.1 |
Eq Float |
Note that due to the presence of >>> 0/0 == (0/0 :: Float) False Also note that >>> 0 == (-0 :: Float) True >>> recip 0 == recip (-0 :: Float) False |
Floating Float | Since: base-2.1 |
Fractional Float |
Note that due to the presence of >>> 0/0 * (recip 0/0 :: Float) NaN Since: base-2.1 |
Data Float | Since: base-4.0.0.0 |
Defined in Data.Data Methodsgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Float -> c Float Source gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Float Source toConstr :: Float -> Constr Source dataTypeOf :: Float -> DataType Source dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Float) Source dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Float) Source gmapT :: (forall b. Data b => b -> b) -> Float -> Float Source gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Float -> r Source gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Float -> r Source gmapQ :: (forall d. Data d => d -> u) -> Float -> [u] Source gmapQi :: Int -> (forall d. Data d => d -> u) -> Float -> u Source gmapM :: Monad m => (forall d. Data d => d -> m d) -> Float -> m Float Source gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Float -> m Float Source gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Float -> m Float Source | |
Num Float |
Note that due to the presence of >>> 0/0 + (negate 0/0 :: Float) NaN Also note that due to the presence of -0, >>> 0 + (-0 :: Float) 0.0 Since: base-2.1 |
Ord Float |
Note that due to the presence of >>> 0/0 <= (0/0 :: Float) False Also note that, due to the same, >>> (0/0 :: Float) > 1 False >>> compare (0/0 :: Float) 1 GT |
Defined in GHC.Classes | |
Read Float | Since: base-2.1 |
Real Float | Since: base-2.1 |
Defined in GHC.Float MethodstoRational :: Float -> Rational Source | |
RealFloat Float | Since: base-2.1 |
Defined in GHC.Float MethodsfloatRadix :: Float -> Integer Source floatDigits :: Float -> Int Source floatRange :: Float -> (Int, Int) Source decodeFloat :: Float -> (Integer, Int) Source encodeFloat :: Integer -> Int -> Float Source exponent :: Float -> Int Source significand :: Float -> Float Source scaleFloat :: Int -> Float -> Float Source isInfinite :: Float -> Bool Source isDenormalized :: Float -> Bool Source isNegativeZero :: Float -> Bool Source | |
RealFrac Float | Since: base-2.1 |
Show Float | Since: base-2.1 |
Storable Float | Since: base-2.1 |
Defined in Foreign.Storable | |
PrintfArg Float | Since: base-2.1 |
Defined in Text.Printf | |
Generic1 (URec Float :: k -> Type) | Since: base-4.9.0.0 |
Functor (URec Float :: Type -> Type) | Since: base-4.9.0.0 |
Foldable (URec Float :: Type -> Type) | Since: base-4.9.0.0 |
Defined in Data.Foldable Methodsfold :: Monoid m => URec Float m -> m Source foldMap :: Monoid m => (a -> m) -> URec Float a -> m Source foldMap' :: Monoid m => (a -> m) -> URec Float a -> m Source foldr :: (a -> b -> b) -> b -> URec Float a -> b Source foldr' :: (a -> b -> b) -> b -> URec Float a -> b Source foldl :: (b -> a -> b) -> b -> URec Float a -> b Source foldl' :: (b -> a -> b) -> b -> URec Float a -> b Source foldr1 :: (a -> a -> a) -> URec Float a -> a Source foldl1 :: (a -> a -> a) -> URec Float a -> a Source toList :: URec Float a -> [a] Source null :: URec Float a -> Bool Source length :: URec Float a -> Int Source elem :: Eq a => a -> URec Float a -> Bool Source maximum :: Ord a => URec Float a -> a Source minimum :: Ord a => URec Float a -> a Source | |
Traversable (URec Float :: Type -> Type) | Since: base-4.9.0.0 |
Defined in Data.Traversable Methodstraverse :: Applicative f => (a -> f b) -> URec Float a -> f (URec Float b) Source sequenceA :: Applicative f => URec Float (f a) -> f (URec Float a) Source mapM :: Monad m => (a -> m b) -> URec Float a -> m (URec Float b) Source sequence :: Monad m => URec Float (m a) -> m (URec Float a) Source | |
Eq (URec Float p) | |
Ord (URec Float p) | |
Defined in GHC.Generics Methodscompare :: URec Float p -> URec Float p -> Ordering Source (<) :: URec Float p -> URec Float p -> Bool Source (<=) :: URec Float p -> URec Float p -> Bool Source (>) :: URec Float p -> URec Float p -> Bool Source (>=) :: URec Float p -> URec Float p -> Bool Source | |
Show (URec Float p) | |
Generic (URec Float p) | |
data URec Float (p :: k) |
Used for marking occurrences of Since: base-4.9.0.0 |
type Rep1 (URec Float :: k -> Type) | |
Defined in GHC.Generics | |
type Rep (URec Float p) | |
Defined in GHC.Generics |
Double-precision floating point numbers. It is desirable that this type be at least equal in range and precision to the IEEE double-precision type.
Enum Double | Since: base-2.1 |
Defined in GHC.Float Methodssucc :: Double -> Double Source pred :: Double -> Double Source toEnum :: Int -> Double Source fromEnum :: Double -> Int Source enumFrom :: Double -> [Double] Source enumFromThen :: Double -> Double -> [Double] Source enumFromTo :: Double -> Double -> [Double] Source enumFromThenTo :: Double -> Double -> Double -> [Double] Source | |
Eq Double |
Note that due to the presence of >>> 0/0 == (0/0 :: Double) False Also note that >>> 0 == (-0 :: Double) True >>> recip 0 == recip (-0 :: Double) False |
Floating Double | Since: base-2.1 |
Defined in GHC.Float Methodsexp :: Double -> Double Source log :: Double -> Double Source sqrt :: Double -> Double Source (**) :: Double -> Double -> Double Source logBase :: Double -> Double -> Double Source sin :: Double -> Double Source cos :: Double -> Double Source tan :: Double -> Double Source asin :: Double -> Double Source acos :: Double -> Double Source atan :: Double -> Double Source sinh :: Double -> Double Source cosh :: Double -> Double Source tanh :: Double -> Double Source asinh :: Double -> Double Source acosh :: Double -> Double Source atanh :: Double -> Double Source log1p :: Double -> Double Source expm1 :: Double -> Double Source | |
Fractional Double |
Note that due to the presence of >>> 0/0 * (recip 0/0 :: Double) NaN Since: base-2.1 |
Data Double | Since: base-4.0.0.0 |
Defined in Data.Data Methodsgfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Double -> c Double Source gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Double Source toConstr :: Double -> Constr Source dataTypeOf :: Double -> DataType Source dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Double) Source dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Double) Source gmapT :: (forall b. Data b => b -> b) -> Double -> Double Source gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Double -> r Source gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Double -> r Source gmapQ :: (forall d. Data d => d -> u) -> Double -> [u] Source gmapQi :: Int -> (forall d. Data d => d -> u) -> Double -> u Source gmapM :: Monad m => (forall d. Data d => d -> m d) -> Double -> m Double Source gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Double -> m Double Source gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Double -> m Double Source | |
Num Double |
Note that due to the presence of >>> 0/0 + (negate 0/0 :: Double) NaN Also note that due to the presence of -0, >>> 0 + (-0 :: Double) 0.0 Since: base-2.1 |
Ord Double |
Note that due to the presence of >>> 0/0 <= (0/0 :: Double) False Also note that, due to the same, >>> (0/0 :: Double) > 1 False >>> compare (0/0 :: Double) 1 GT |
Defined in GHC.Classes | |
Read Double | Since: base-2.1 |
Real Double | Since: base-2.1 |
Defined in GHC.Float MethodstoRational :: Double -> Rational Source | |
RealFloat Double | Since: base-2.1 |
Defined in GHC.Float MethodsfloatRadix :: Double -> Integer Source floatDigits :: Double -> Int Source floatRange :: Double -> (Int, Int) Source decodeFloat :: Double -> (Integer, Int) Source encodeFloat :: Integer -> Int -> Double Source exponent :: Double -> Int Source significand :: Double -> Double Source scaleFloat :: Int -> Double -> Double Source isNaN :: Double -> Bool Source isInfinite :: Double -> Bool Source isDenormalized :: Double -> Bool Source isNegativeZero :: Double -> Bool Source | |
RealFrac Double | Since: base-2.1 |
Show Double | Since: base-2.1 |
Storable Double | Since: base-2.1 |
Defined in Foreign.Storable MethodssizeOf :: Double -> Int Source alignment :: Double -> Int Source peekElemOff :: Ptr Double -> Int -> IO Double Source pokeElemOff :: Ptr Double -> Int -> Double -> IO () Source peekByteOff :: Ptr b -> Int -> IO Double Source pokeByteOff :: Ptr b -> Int -> Double -> IO () Source | |
PrintfArg Double | Since: base-2.1 |
Defined in Text.Printf | |
Generic1 (URec Double :: k -> Type) | Since: base-4.9.0.0 |
Functor (URec Double :: Type -> Type) | Since: base-4.9.0.0 |
Foldable (URec Double :: Type -> Type) | Since: base-4.9.0.0 |
Defined in Data.Foldable Methodsfold :: Monoid m => URec Double m -> m Source foldMap :: Monoid m => (a -> m) -> URec Double a -> m Source foldMap' :: Monoid m => (a -> m) -> URec Double a -> m Source foldr :: (a -> b -> b) -> b -> URec Double a -> b Source foldr' :: (a -> b -> b) -> b -> URec Double a -> b Source foldl :: (b -> a -> b) -> b -> URec Double a -> b Source foldl' :: (b -> a -> b) -> b -> URec Double a -> b Source foldr1 :: (a -> a -> a) -> URec Double a -> a Source foldl1 :: (a -> a -> a) -> URec Double a -> a Source toList :: URec Double a -> [a] Source null :: URec Double a -> Bool Source length :: URec Double a -> Int Source elem :: Eq a => a -> URec Double a -> Bool Source maximum :: Ord a => URec Double a -> a Source minimum :: Ord a => URec Double a -> a Source | |
Traversable (URec Double :: Type -> Type) | Since: base-4.9.0.0 |
Defined in Data.Traversable Methodstraverse :: Applicative f => (a -> f b) -> URec Double a -> f (URec Double b) Source sequenceA :: Applicative f => URec Double (f a) -> f (URec Double a) Source mapM :: Monad m => (a -> m b) -> URec Double a -> m (URec Double b) Source sequence :: Monad m => URec Double (m a) -> m (URec Double a) Source | |
Eq (URec Double p) | Since: base-4.9.0.0 |
Ord (URec Double p) | Since: base-4.9.0.0 |
Defined in GHC.Generics Methodscompare :: URec Double p -> URec Double p -> Ordering Source (<) :: URec Double p -> URec Double p -> Bool Source (<=) :: URec Double p -> URec Double p -> Bool Source (>) :: URec Double p -> URec Double p -> Bool Source (>=) :: URec Double p -> URec Double p -> Bool Source max :: URec Double p -> URec Double p -> URec Double p Source min :: URec Double p -> URec Double p -> URec Double p Source | |
Show (URec Double p) | Since: base-4.9.0.0 |
Generic (URec Double p) | Since: base-4.9.0.0 |
data URec Double (p :: k) |
Used for marking occurrences of Since: base-4.9.0.0 |
type Rep1 (URec Double :: k -> Type) | |
Defined in GHC.Generics | |
type Rep (URec Double p) | |
Defined in GHC.Generics |
data Float# :: TYPE 'FloatRep Source
data Double# :: TYPE 'DoubleRep Source
double2Int :: Double -> Int Source
int2Double :: Int -> Double Source
float2Int :: Float -> Int Source
int2Float :: Int -> Float Source
See GHC.Classes#matching_overloaded_methods_in_rules
eqFloat :: Float -> Float -> Bool Source
eqDouble :: Double -> Double -> Bool Source
Enum Double | Since: base-2.1 |
Methodssucc :: Double -> Double Source pred :: Double -> Double Source toEnum :: Int -> Double Source fromEnum :: Double -> Int Source enumFrom :: Double -> [Double] Source enumFromThen :: Double -> Double -> [Double] Source enumFromTo :: Double -> Double -> [Double] Source enumFromThenTo :: Double -> Double -> Double -> [Double] Source | |
Enum Float | Since: base-2.1 |
Fractional Double |
Note that due to the presence of >>> 0/0 * (recip 0/0 :: Double) NaN Since: base-2.1 |
Fractional Float |
Note that due to the presence of >>> 0/0 * (recip 0/0 :: Float) NaN Since: base-2.1 |
Num Double |
Note that due to the presence of >>> 0/0 + (negate 0/0 :: Double) NaN Also note that due to the presence of -0, >>> 0 + (-0 :: Double) 0.0 Since: base-2.1 |
Num Float |
Note that due to the presence of >>> 0/0 + (negate 0/0 :: Float) NaN Also note that due to the presence of -0, >>> 0 + (-0 :: Float) 0.0 Since: base-2.1 |
Real Double | Since: base-2.1 |
MethodstoRational :: Double -> Rational Source | |
Real Float | Since: base-2.1 |
MethodstoRational :: Float -> Rational Source | |
RealFrac Double | Since: base-2.1 |
RealFrac Float | Since: base-2.1 |
Show Double | Since: base-2.1 |
Show Float | Since: base-2.1 |
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/8.8.3/docs/html/libraries/base-4.13.0.0/GHC-Float.html