Changes to .reduce seem to have broken it.
Fix use of bless.
Port "linear terms" methods from p5 Math::Polynomial.
Add Euclid methods from p5 Math::Polynomial.
Eliminate underscores in method names.
Import p5 Math::Polynomial basics.t test, clean up things a tad.
Port interpolate and some supporting methods.
Add calculus methods from P5's Math::Polynomial.
.degree now properly returns -Inf for the zero polynomial.
.shift-up and .shift-down.
Port .slice and .nest.
Fix p5 => p6 operator glitch.
Add pow_mod, tweak previous changes a bit.
Port divmod from p5 Math::Polynomial.
is-monic and monize.
Add .Bool, tweak tests a bit.
Start importing some tests from p5's Math::Polynomial, add degree, is…
…-zero, is-nonzero, infix:<==>, and infix:<!=>.
Make it all look more like my current p6 code. :)
self.WHAT.perl is a very bad thing to call in Polynomial.perl. So don't.
Refactor .evaluate to use Horner's algorithm.
Remove "multi" from methods that do not use it.
Remove unneeded initialization.
Refactored infix:<+> with Z+
Refactored .map of single .perl method to hypermethod.
Refactored to use .kv for efficiency.
Changed ^(@foo.elems) to @foo.keys
Removed "our" from method declarations.
Methods should have the default C<has> semantics. See S12.
Change slurping .new param; no longer needs to be a copy.
Use object type instead of hardcoded type to allow subclassing.
Change internal .bless and .new calls from parens to colon.
Refactor slurping .new to use arrayref .new
Comment out debugging code.