Also implements a config object that upon change, lazily invalidates
all operations that access it.
Also allows references to signatures with nonexistent types (which
typed-function does not); they come back as undefined.
Uses these features to implement sqrt for number and complex.
Resolves#7.
Allows dependencies to be economically expressed and used.
For example, see the new definition of subtract.
Credit for the basic idea goes to James Drew, see
https://stackoverflow.com/a/41525264Resolves#21.
Also starts each PocomathInstance with no types at all, and uses the new
situation to eliminate the need for a Complex "base case".
Resolves#14.
Resolves#13.
Co-authored-by: Glen Whitney <glen@studioinfinity.org>
Reviewed-on: #15
Namely, a README describing the proof-of-concept,
a custom selective loader, and some additional tests.
Co-authored-by: Glen Whitney <glen@studioinfinity.org>
Reviewed-on: #5
This PR also uses such self-reference to define negate and add
for Complex numbers in a way that is independent of component types.
Also adds a bigint type and verifies that pocomath will then handle
Gaussian integers "for free".
Ensures that if one function is invalidated, then any that depend on it will be.
Co-authored-by: Glen Whitney <glen@studioinfinity.org>
Reviewed-on: #4