On this page
GHC.Float
Copyright | (c) The University of Glasgow 1994-2002 Portions obtained from hbc (c) Lennart Augusstson |
---|---|
License | see libraries/base/LICENSE |
Maintainer | cvs-ghc@haskell.org |
Stability | internal |
Portability | non-portable (GHC Extensions) |
Safe Haskell | Trustworthy |
Language | Haskell2010 |
Description
The types Float
and Double
, the classes Floating
and RealFloat
and casting between Word32 and Float and Word64 and Double.
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
Minimal complete definition
pi, exp, log, sin, cos, asin, acos, atan, sinh, cosh, asinh, acosh, atanh
Methods
(**) :: 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:
- if
x
is a large negative number,log (1 + exp x)
will be imprecise for the reasons given inlog1p
. - if
exp x
is close to-1
,log (1 + exp x)
will be imprecise for the reasons given inexpm1
.
Since: base-4.9.0.0
log1mexp x
computes log (1 - exp x)
, but provides more precise results if possible.
Examples:
- if
x
is a large negative number,log (1 - exp x)
will be imprecise for the reasons given inlog1p
. - if
exp x
is close to1
,log (1 - exp x)
will be imprecise for the reasons given inexpm1
.
Since: base-4.9.0.0
Instances
class (RealFrac a, Floating a) => RealFloat a where Source
Efficient, machine-independent access to the components of a floating-point number.
Minimal complete definition
floatRadix, floatDigits, floatRange, decodeFloat, encodeFloat, isNaN, isInfinite, isDenormalized, isNegativeZero, isIEEE
Methods
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.
Instances
Constructors
clamp :: Int -> Int -> Int Source
Used to prevent exponent over/underflow when encoding floating point numbers. This is also the same as
\(x,y) -> max (-x) (min x y)
Example
>>> clamp (-10) 5
10
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.
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
.
formatRealFloat :: RealFloat a => FFFormat -> Maybe Int -> a -> String Source
log1mexpOrd :: (Ord a, Floating a) => a -> a Source
Default implementation for log1mexp
requiring Ord
to test against a threshold to decide which implementation variant to use.
plusFloat :: Float -> Float -> Float Source
minusFloat :: Float -> Float -> Float Source
negateFloat :: Float -> Float Source
timesFloat :: Float -> Float -> Float Source
fabsFloat :: Float -> Float Source
integerToFloat# :: Integer -> Float# Source
Convert an Integer to a Float#
integerToBinaryFloat' :: RealFloat a => Integer -> a Source
Converts a positive integer to a floating-point value.
The value nearest to the argument will be returned. If there are two such values, the one with an even significand will be returned (i.e. IEEE roundTiesToEven).
The argument must be strictly positive, and floatRadix (undefined :: a)
must be 2.
naturalToFloat# :: Natural -> Float# Source
Convert a Natural to a Float#
divideFloat :: Float -> Float -> Float Source
rationalToFloat :: Integer -> Integer -> Float Source
fromRat'' :: RealFloat a => Int -> Int -> Integer -> Integer -> a Source
properFractionFloat :: Integral b => Float -> (b, Float) Source
truncateFloat :: Integral b => Float -> b Source
roundFloat :: Integral b => Float -> b Source
floorFloat :: Integral b => Float -> b Source
ceilingFloat :: Integral b => Float -> b Source
expFloat :: Float -> Float Source
logFloat :: Float -> Float Source
sqrtFloat :: 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
powerFloat :: Float -> Float -> Float Source
asinhFloat :: Float -> Float Source
acoshFloat :: Float -> Float Source
atanhFloat :: Float -> Float Source
log1pFloat :: Float -> Float Source
expm1Float :: Float -> Float Source
isFloatFinite :: Float -> Int Source
isFloatNaN :: Float -> Int Source
isFloatInfinite :: Float -> Int Source
isFloatDenormalized :: Float -> Int Source
isFloatNegativeZero :: Float -> Int Source
Arguments
plusDouble :: Double -> Double -> Double Source
minusDouble :: Double -> Double -> Double Source
negateDouble :: Double -> Double Source
timesDouble :: Double -> Double -> Double Source
fabsDouble :: Double -> Double Source
integerToDouble# :: Integer -> Double# Source
Convert an Integer to a Double#
naturalToDouble# :: Natural -> Double# Source
Encode a Natural (mantissa) into a Double#
divideDouble :: Double -> Double -> Double Source
rationalToDouble :: Integer -> Integer -> Double Source
expDouble :: Double -> Double Source
logDouble :: Double -> Double Source
sqrtDouble :: 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
powerDouble :: Double -> Double -> Double Source
asinhDouble :: Double -> Double Source
acoshDouble :: Double -> Double Source
atanhDouble :: Double -> Double Source
log1pDouble :: Double -> Double Source
expm1Double :: Double -> Double Source
properFractionDouble :: Integral b => Double -> (b, Double) Source
truncateDouble :: Integral b => Double -> b Source
roundDouble :: Integral b => Double -> b Source
ceilingDouble :: Integral b => Double -> b Source
floorDouble :: Integral b => Double -> b Source
isDoubleFinite :: Double -> Int Source
isDoubleNaN :: Double -> Int Source
isDoubleInfinite :: Double -> Int Source
isDoubleDenormalized :: Double -> Int Source
isDoubleNegativeZero :: Double -> Int Source
formatRealFloatAlt :: RealFloat a => FFFormat -> Maybe Int -> Bool -> a -> String Source
roundTo :: Int -> Int -> [Int] -> (Int, [Int]) Source
expt :: Integer -> Int -> Integer Source
roundingMode# :: Integer -> Int# -> Int# Source
fromRat' :: RealFloat a => Rational -> a Source
expts :: Array Int Integer Source
expts10 :: Array Int Integer Source
gtFloat :: Float -> Float -> Bool Source
geFloat :: Float -> Float -> Bool Source
ltFloat :: Float -> Float -> Bool Source
leFloat :: Float -> Float -> Bool Source
gtDouble :: Double -> Double -> Bool Source
geDouble :: Double -> Double -> Bool Source
leDouble :: Double -> Double -> Bool Source
ltDouble :: Double -> Double -> Bool Source
double2Float :: Double -> Float Source
float2Double :: Float -> Double Source
word2Double :: Word -> Double Source
word2Float :: Word -> Float 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
stgWord32ToFloat :: Word32# -> Float# Source
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
stgFloatToWord32 :: Float# -> Word32# Source
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
stgWord64ToDouble :: Word64# -> Double# Source
castDoubleToWord64 :: Double -> Word64 Source
castFloatToWord64 f
does a bit-for-bit copy from a floating-point value to an integral value.
Since: base-4.10.0.0
stgDoubleToWord64 :: Double# -> Word64# Source
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.
Instances
Data Float Source | 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 |
|
Storable Float Source | Since: base-2.1 |
Defined in Foreign.Storable |
|
Enum Float Source | Since: base-2.1 |
Floating Float Source | Since: base-2.1 |
RealFloat Float Source | 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 |
|
Num Float Source | Note that due to the presence of Also note that due to the presence of -0, Since: base-2.1 |
Read Float Source | Since: base-2.1 |
Fractional Float Source | Note that due to the presence of Since: base-2.1 |
Real Float Source | Since: base-2.1 |
Defined in GHC.Float MethodstoRational :: Float -> Rational Source |
|
RealFrac Float Source | Since: base-2.1 |
Show Float Source | Since: base-2.1 |
PrintfArg Float Source | Since: base-2.1 |
Defined in Text.Printf |
|
Eq Float | Note that due to the presence of Also note that
|
Ord Float | Note that due to the presence of Also note that, due to the same,
|
Defined in GHC.Classes |
|
Generic1 (URec Float :: k -> Type) Source | |
Foldable (UFloat :: Type -> Type) Source | Since: base-4.9.0.0 |
Defined in Data.Foldable Methodsfold :: Monoid m => UFloat m -> m Source foldMap :: Monoid m => (a -> m) -> UFloat a -> m Source foldMap' :: Monoid m => (a -> m) -> UFloat a -> m Source foldr :: (a -> b -> b) -> b -> UFloat a -> b Source foldr' :: (a -> b -> b) -> b -> UFloat a -> b Source foldl :: (b -> a -> b) -> b -> UFloat a -> b Source foldl' :: (b -> a -> b) -> b -> UFloat a -> b Source foldr1 :: (a -> a -> a) -> UFloat a -> a Source foldl1 :: (a -> a -> a) -> UFloat a -> a Source toList :: UFloat a -> [a] Source null :: UFloat a -> Bool Source length :: UFloat a -> Int Source elem :: Eq a => a -> UFloat a -> Bool Source maximum :: Ord a => UFloat a -> a Source minimum :: Ord a => UFloat a -> a Source |
|
Traversable (UFloat :: Type -> Type) Source | Since: base-4.9.0.0 |
Defined in Data.Traversable |
|
Functor (URec Float :: Type -> Type) Source | Since: base-4.9.0.0 |
Generic (URec Float p) Source | |
Show (URec Float p) Source | |
Eq (URec Float p) Source | |
Ord (URec Float p) Source | |
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 |
|
data URec Float (p :: k) Source | Used for marking occurrences of Since: base-4.9.0.0 |
type Rep1 (URec Float :: k -> Type) Source | Since: base-4.9.0.0 |
Defined in GHC.Generics |
|
type Rep (URec Float p) Source | |
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.
Instances
Data Double Source | 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 |
|
Storable Double Source | 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 |
|
Enum Double Source | 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 |
|
Floating Double Source | 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 |
|
RealFloat Double Source | 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 |
|
Num Double Source | Note that due to the presence of Also note that due to the presence of -0, Since: base-2.1 |
Read Double Source | Since: base-2.1 |
Fractional Double Source | Note that due to the presence of Since: base-2.1 |
Real Double Source | Since: base-2.1 |
Defined in GHC.Float MethodstoRational :: Double -> Rational Source |
|
RealFrac Double Source | Since: base-2.1 |
Show Double Source | Since: base-2.1 |
PrintfArg Double Source | Since: base-2.1 |
Defined in Text.Printf |
|
Eq Double | Note that due to the presence of Also note that
|
Ord Double | Note that due to the presence of Also note that, due to the same,
|
Defined in GHC.Classes |
|
Generic1 (URec Double :: k -> Type) Source | |
Foldable (UDouble :: Type -> Type) Source | Since: base-4.9.0.0 |
Defined in Data.Foldable Methodsfold :: Monoid m => UDouble m -> m Source foldMap :: Monoid m => (a -> m) -> UDouble a -> m Source foldMap' :: Monoid m => (a -> m) -> UDouble a -> m Source foldr :: (a -> b -> b) -> b -> UDouble a -> b Source foldr' :: (a -> b -> b) -> b -> UDouble a -> b Source foldl :: (b -> a -> b) -> b -> UDouble a -> b Source foldl' :: (b -> a -> b) -> b -> UDouble a -> b Source foldr1 :: (a -> a -> a) -> UDouble a -> a Source foldl1 :: (a -> a -> a) -> UDouble a -> a Source toList :: UDouble a -> [a] Source null :: UDouble a -> Bool Source length :: UDouble a -> Int Source elem :: Eq a => a -> UDouble a -> Bool Source maximum :: Ord a => UDouble a -> a Source minimum :: Ord a => UDouble a -> a Source |
|
Traversable (UDouble :: Type -> Type) Source | Since: base-4.9.0.0 |
Defined in Data.Traversable |
|
Functor (URec Double :: Type -> Type) Source | Since: base-4.9.0.0 |
Generic (URec Double p) Source | |
Show (URec Double p) Source | Since: base-4.9.0.0 |
Eq (URec Double p) Source | Since: base-4.9.0.0 |
Ord (URec Double p) Source | 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 |
|
data URec Double (p :: k) Source | Used for marking occurrences of Since: base-4.9.0.0 |
type Rep1 (URec Double :: k -> Type) Source | Since: base-4.9.0.0 |
Defined in GHC.Generics |
|
type Rep (URec Double p) Source | Since: base-4.9.0.0 |
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
Monomorphic equality operators
See GHC.Classes#matching_overloaded_methods_in_rules
eqFloat :: Float -> Float -> Bool Source
eqDouble :: Double -> Double -> Bool Source
Orphan instances
Enum Double Source | 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 Source | Since: base-2.1 |
Num Double Source | Note that due to the presence of Also note that due to the presence of -0, Since: base-2.1 |
Num Float Source | Note that due to the presence of Also note that due to the presence of -0, Since: base-2.1 |
Fractional Double Source | Note that due to the presence of Since: base-2.1 |
Fractional Float Source | Note that due to the presence of Since: base-2.1 |
Real Double Source | Since: base-2.1 |
MethodstoRational :: Double -> Rational Source |
|
Real Float Source | Since: base-2.1 |
MethodstoRational :: Float -> Rational Source |
|
RealFrac Double Source | Since: base-2.1 |
RealFrac Float Source | Since: base-2.1 |
Show Double Source | Since: base-2.1 |
Show Float Source | 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/9.4.2/docs/libraries/base-4.17.0.0/GHC-Float.html