Portability | BangPatterns, DeriveDataTypeable, Rank2Types, MonoLocalBinds |
---|---|
Stability | unstable |
Maintainer | claudiusmaximus@goto10.org |
Safe Haskell | Safe-Infered |
Variable precision software fixed point based on Integer
.
Accuracy has not been extensively verified.
Example:
reifyPrecision 1000 $ \prec -> show $ auto (355 :: VFixed N15) / 113 `atPrecision` prec
- data VFixed p
- data DFixed = DFixed {
- dxPrecision :: !Word
- dxMantissa :: !Integer
- toDFixed :: NaturalNumber p => VFixed p -> DFixed
- fromDFixed :: NaturalNumber p => DFixed -> Maybe (VFixed p)
- withDFixed :: DFixed -> (forall p. NaturalNumber p => VFixed p -> r) -> r
Documentation
A software implementation of fixed point arithmetic, using an
Integer
adjusted to p
bits after the binary point.
Typeable1 VFixed | |
VariablePrecision VFixed | |
HasPrecision VFixed | |
NaturalNumber p => Eq (VFixed p) | |
NaturalNumber p => Fractional (VFixed p) | |
Data p => Data (VFixed p) | |
NaturalNumber p => Num (VFixed p) | |
NaturalNumber p => Ord (VFixed p) | |
NaturalNumber p => Read (VFixed p) | |
NaturalNumber p => Real (VFixed p) | |
NaturalNumber p => RealFrac (VFixed p) | |
NaturalNumber p => Show (VFixed p) | |
NaturalNumber p => BinDecode (VFixed p) |
A concrete format suitable for storage or wire transmission.
DFixed | |
|
fromDFixed :: NaturalNumber p => DFixed -> Maybe (VFixed p)Source
withDFixed :: DFixed -> (forall p. NaturalNumber p => VFixed p -> r) -> rSource
Thaw a DFixed
to its natural precision.