Releases: mhogrefe/malachite
v0.4.13
v0.4.12
- Thanks to florian1345 for some addition and subtraction optimizations that significantly improve performance on a Windows target.
v0.4.11
v0.4.10
v0.4.9
v0.4.8
This is a fairly minor release. I've made significant progress on Float
multiplication and squaring, but that work isn't included here. Here's what is:
Shl
,ShlAssign
,Shr
, andShrAssign
implementations forFloat
s- PyO3 integration by Antonio Mamić
- some more
EqAbs
implementations - I've written a doctest formatter and runner, which made doctests nicer and also cut build-and-test time in half
v0.4.7
v0.4.6
Implemented Float
addition and subtraction. The code is derived from MPFR and is highly optimized (which is one reason it took so long). The is functionality for providing a rounding mode, an output precision, or both. The defaults are RoundingMode::Nearest
and the maximum precision of the inputs. There are also implementations for adding and subtracting a Float
and a Rational
; any numeric type apart from Rational
can be losslessly converted to Float
, so there are no implementations for e.g. Float + Natural
, though in principle such an implementation could still be worthwhile since it would save some memory usage.
Next up: Float multiplication, squaring, and bit shifting (that is, multiplication and division by powers of 2).
v0.4.5
Various minor improvements.
- Malachite is now
no_std
, unless therandom
,test_build
, orbin_build
features are enabled. Thanks to shekohex for initiating this work! - As suggested by amamic1803, a
twos_complement_limb_count
method has been added toInteger
. - As pointed out by amamic1803, the
malachite
meta-crate did not have a32_bit_limbs
feature to propagate to its sub-crates. Now it does, along with arandom
feature. - I wrote a comment auto-formatter, eliminating the time I spend manually formatting comments. The newly-formatted comments account for most of the diff.
Integer
now implementsCheckedDiv
.Natural
now implementsPartialOrdAbs
for primitive floats. I added some tests for theAbsDiff
trait inmalachite-base
in preparation for implementing it forNatural
,Integer
, andRational
.- The random
Float
generators were producing floats whose exponents were off by 1. That has been fixed.
Most of my work in the last few months has been implementing addition and subtraction for Float
s. This is a lot less trivial than it sounds, because I'm translating MPFR's code, which is very optimized and has many special cases for addition and subtraction. Counterintuitively, implementing more advanced functions will take less time. I'm wrapping up the addition and subtraction work, so that will be released soon.