A final (?) prototype for a refactor of mathjs, culminating the picomath, pocomath, typomath series. Provides an extensible core with "fuzzy" types for its operations, that can at any time generate exact .d.ts file for its current state.
The most troubling example is found in `src/complex/arithmetic.ts`,
where (as one can see by carefully screening the output when you
run src/index.ts) deepkit reports the type of
```
Dependencies<'absquare', X> & Dependencies<'add', Returns<'absquare', X>>
```
to be `any` (look for the line starting "Because { kind: 1," in the output;
kind: 1 is deepkit's code for `any`. It doesn't even give a syntactic
description of the type as say the intersection of two instances of the
Dependencies generic type, which would be good enough (if we got the
string parameters to the generics).
|
||
|---|---|---|
| src | ||
| .gitignore | ||
| LICENSE | ||
| package.json5 | ||
| pnpm-lock.yaml | ||
| README.md | ||
| tsconfig.json | ||
typocomath
A final (?) prototype for a refactor of mathjs, culminating the picomath, pocomath, typomath series. Provides an extensible core with "fuzzy" types for its operations, that can at any time generate exact .d.ts file for its current state.
To build and run the prototype, run:
npx tsc
echo '{"type": "module"}' > obj/package.json
node obj
Installation note: after doing pnpm install if the above compilation/run commands don't seem to work, execute npx deepkit-type-install and try again.