fix: Separate typed instance for each PocomathInstance (#15)
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
This commit is contained in:
parent
ed71b15969
commit
0069597a76
25 changed files with 120 additions and 74 deletions
3
src/bigint/Types/bigint.mjs
Normal file
3
src/bigint/Types/bigint.mjs
Normal file
|
@ -0,0 +1,3 @@
|
|||
export const Types = {
|
||||
bigint: {test: b => typeof b === 'bigint'}
|
||||
}
|
5
src/bigint/add.mjs
Normal file
5
src/bigint/add.mjs
Normal file
|
@ -0,0 +1,5 @@
|
|||
export {Types} from './Types/bigint.mjs'
|
||||
|
||||
export const add = {
|
||||
'...bigint': [[], addends => addends.reduce((x,y) => x+y, 0n)],
|
||||
}
|
4
src/bigint/all.mjs
Normal file
4
src/bigint/all.mjs
Normal file
|
@ -0,0 +1,4 @@
|
|||
export {Types} from './Types/bigint.mjs'
|
||||
export {add} from './add.mjs'
|
||||
export {negate} from './negate.mjs'
|
||||
export {subtract} from '../generic/subtract.mjs'
|
3
src/bigint/negate.mjs
Normal file
3
src/bigint/negate.mjs
Normal file
|
@ -0,0 +1,3 @@
|
|||
export {Types} from './Types/bigint.mjs'
|
||||
|
||||
export const negate = {bigint: [[], b => -b ]}
|
Loading…
Add table
Add a link
Reference in a new issue