All checks were successful
/ test (pull_request) Successful in 17s
This test turned out to be a very discerning one. Adding it uncovered numerous bugs, large and small, in the TypeDispatcher. The most major one was that a Map distinguishes keys by strict equality, and hence since every lookup for a cached behavior was using a newly-generated array of types, the cache was never being hit. So it looked like methods were being updated as dependencies changed, when what was really happening was that the behavior was simply being regenerated from scratch on every call, which would not be performant as the prototype scaled. This bug is now fixed (by switching to a third-party ArrayKeyedMap), along with many smaller bugs too numerous to list. It should now be feasible to go through Pocomath and add all of the functions that depend on numbers and booleans only.
24 lines
465 B
Text
24 lines
465 B
Text
{
|
|
name: 'nanomath',
|
|
version: '1.0.0',
|
|
description: 'Sequel to mathjs as prototype for mathjs overhaul',
|
|
scripts: {
|
|
test: 'mocha ./**/*.spec.js',
|
|
},
|
|
keywords: [
|
|
'math',
|
|
'algebra',
|
|
],
|
|
author: 'Glen Whitney',
|
|
license: 'Apache 2.0',
|
|
repository: {
|
|
type: 'git',
|
|
url: 'https://code.studioinfinity.org/glen/nanomath.git',
|
|
},
|
|
devDependencies: {
|
|
mocha: '^11.1.0',
|
|
},
|
|
dependencies: {
|
|
'array-keyed-map': '^2.1.3',
|
|
},
|
|
}
|