aontu 0.52.0 → 0.52.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/aontu.d.ts +1 -1
- package/dist/aontu.js +50 -1
- package/dist/aontu.js.map +1 -1
- package/dist/ctx.d.ts +3 -0
- package/dist/ctx.js +1 -0
- package/dist/ctx.js.map +1 -1
- package/dist/err.js +10 -1
- package/dist/err.js.map +1 -1
- package/dist/hints.js +56 -1
- package/dist/hints.js.map +1 -1
- package/dist/lang.js +235 -15
- package/dist/lang.js.map +1 -1
- package/dist/lsp.js +4 -3
- package/dist/lsp.js.map +1 -1
- package/dist/unify.d.ts +2 -1
- package/dist/unify.js +55 -3
- package/dist/unify.js.map +1 -1
- package/dist/val/ConstraintVal.d.ts +42 -1
- package/dist/val/ConstraintVal.js +1048 -107
- package/dist/val/ConstraintVal.js.map +1 -1
- package/dist/val/ExpectVal.d.ts +1 -0
- package/dist/val/ExpectVal.js +14 -0
- package/dist/val/ExpectVal.js.map +1 -1
- package/dist/val/FuncBaseVal.js +7 -1
- package/dist/val/FuncBaseVal.js.map +1 -1
- package/dist/val/ListVal.js +17 -4
- package/dist/val/ListVal.js.map +1 -1
- package/dist/val/MapVal.js +9 -0
- package/dist/val/MapVal.js.map +1 -1
- package/dist/val/OpBaseVal.js +5 -1
- package/dist/val/OpBaseVal.js.map +1 -1
- package/dist/val/RefVal.js +69 -23
- package/dist/val/RefVal.js.map +1 -1
- package/dist/val/Val.d.ts +1 -1
- package/dist/val/Val.js +0 -3
- package/dist/val/Val.js.map +1 -1
- package/package.json +10 -10
- package/src/aontu.ts +58 -1
- package/src/ctx.ts +9 -0
- package/src/err.ts +10 -1
- package/src/hints.ts +63 -1
- package/src/lang.ts +258 -16
- package/src/lsp.ts +4 -3
- package/src/unify.ts +59 -2
- package/src/val/ConstraintVal.ts +1195 -111
- package/src/val/ExpectVal.ts +15 -0
- package/src/val/FuncBaseVal.ts +8 -2
- package/src/val/ListVal.ts +18 -4
- package/src/val/MapVal.ts +11 -0
- package/src/val/OpBaseVal.ts +6 -2
- package/src/val/RefVal.ts +72 -22
- package/src/val/Val.ts +8 -1
package/dist/unify.js
CHANGED
|
@@ -1,15 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/* Copyright (c) 2021-2023 Richard Rodger, MIT License */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.unite = exports.Unify = void 0;
|
|
4
|
+
exports.withDepth = exports.unite = exports.Unify = void 0;
|
|
5
5
|
const ctx_1 = require("./ctx");
|
|
6
6
|
const type_1 = require("./type");
|
|
7
7
|
const err_1 = require("./err");
|
|
8
8
|
const lang_1 = require("./lang");
|
|
9
9
|
const utility_1 = require("./utility");
|
|
10
10
|
const top_1 = require("./val/top");
|
|
11
|
-
//
|
|
11
|
+
// Per-pass revisit bound: how many times one (Val, path) pair may be
|
|
12
|
+
// re-unified within a single fixpoint pass before the evaluator calls it
|
|
13
|
+
// non-convergence (`unify_cycle`). The old false positive here -- a
|
|
14
|
+
// legal model with more than MAXCYCLE sibling conjunct terms at one
|
|
15
|
+
// path, each re-running the TOP self-unify -- is fixed by the per-pass
|
|
16
|
+
// memo below (_tcc/_tpi); test/spec/budget.tsv drives 1200 sibling
|
|
17
|
+
// terms through both engines as the regression guard.
|
|
12
18
|
const MAXCYCLE = 999;
|
|
19
|
+
// Structural recursion budget: how deep `unite` may nest before the
|
|
20
|
+
// evaluator reports `unify_cycle`. SHARED LANGUAGE SURFACE -- Go's
|
|
21
|
+
// maxUniteDepth (go/unify.go) carries the same number, and
|
|
22
|
+
// test/spec/budget.tsv pins the boundary in both, so changing it is a
|
|
23
|
+
// spec-visible change in both ports at once.
|
|
24
|
+
//
|
|
25
|
+
// Why 1000: the whole shared suite peaks at 603 (the deliberately
|
|
26
|
+
// extreme 1200-sibling-term fixture; ordinary documents are two orders
|
|
27
|
+
// below), and V8 exhausts its call stack somewhere past depth ~1500 in
|
|
28
|
+
// this evaluator. 1000 sits above every real document and below the
|
|
29
|
+
// host limit, so the budget -- not the host -- decides the verdict.
|
|
30
|
+
const MAXDEPTH = 1000;
|
|
31
|
+
// Charge a DIRECT `Val.unify` recursion to the same depth budget that
|
|
32
|
+
// `unite` enforces. Function and operator arguments evaluate through
|
|
33
|
+
// `arg.unify(top(), ...)` rather than through the dispatcher, so without
|
|
34
|
+
// this the counter stays flat while the JavaScript stack keeps growing:
|
|
35
|
+
// a 1500-deep `upper(upper(...))` resolved in TypeScript while Go — which
|
|
36
|
+
// routes its arguments through the counted dispatcher — reported
|
|
37
|
+
// `unify_cycle`. Returns the budget nil instead of running when the
|
|
38
|
+
// budget is spent.
|
|
39
|
+
const withDepth = (ctx, a, b, run) => {
|
|
40
|
+
if (MAXDEPTH <= ctx._depth.n) {
|
|
41
|
+
return (0, err_1.makeNilErr)(ctx, 'unify_cycle', a, b);
|
|
42
|
+
}
|
|
43
|
+
ctx._depth.n++;
|
|
44
|
+
try {
|
|
45
|
+
return run();
|
|
46
|
+
}
|
|
47
|
+
finally {
|
|
48
|
+
ctx._depth.n--;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
exports.withDepth = withDepth;
|
|
13
52
|
// Vals should only have to unify downwards (in .unify) over Vals they understand.
|
|
14
53
|
// and for complex Vals, TOP, which means self unify if not yet done
|
|
15
54
|
const unite = (ctx, a, b, whence) => {
|
|
@@ -55,12 +94,22 @@ const unite = (ctx, a, b, whence) => {
|
|
|
55
94
|
// NOTE: if this error occurs "unreasonably", attemp to avoid unnecesary unification
|
|
56
95
|
// See for example PrefVal peg.id equality inspection.
|
|
57
96
|
const sawCount = ctx.seen[saw] ?? 0;
|
|
58
|
-
if (
|
|
97
|
+
if (MAXDEPTH <= ctx._depth.n) {
|
|
98
|
+
// Structural recursion budget. Without it, deep nesting exhausts the
|
|
99
|
+
// V8 call stack and the catch-all below reports a RangeError as
|
|
100
|
+
// `internal` — a verdict that depends on the host's stack size
|
|
101
|
+
// rather than on the document, which is exactly what the
|
|
102
|
+
// determinism clause forbids (docs/trust.md). Tripping here instead
|
|
103
|
+
// makes it a stated budget error, like the pass budget.
|
|
104
|
+
out = (0, err_1.makeNilErr)(ctx, 'unify_cycle', a, b);
|
|
105
|
+
}
|
|
106
|
+
else if (MAXCYCLE < sawCount) {
|
|
59
107
|
// console.log('SAW', sawCount, saw, a?.id, a?.canon, b?.id, b?.canon, ctx.cc)
|
|
60
108
|
out = (0, err_1.makeNilErr)(ctx, 'unify_cycle', a, b);
|
|
61
109
|
}
|
|
62
110
|
else {
|
|
63
111
|
ctx.seen[saw] = sawCount + 1;
|
|
112
|
+
ctx._depth.n++;
|
|
64
113
|
try {
|
|
65
114
|
let unified = false;
|
|
66
115
|
// Dispatch ladder. Structure note:
|
|
@@ -165,6 +214,9 @@ const unite = (ctx, a, b, whence) => {
|
|
|
165
214
|
...(err instanceof RangeError ? { overflow: true } : {}),
|
|
166
215
|
});
|
|
167
216
|
}
|
|
217
|
+
finally {
|
|
218
|
+
ctx._depth.n--;
|
|
219
|
+
}
|
|
168
220
|
}
|
|
169
221
|
ctx.explain && (0, utility_1.explainClose)(te, out);
|
|
170
222
|
return out;
|
package/dist/unify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unify.js","sourceRoot":"","sources":["../src/unify.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"unify.js","sourceRoot":"","sources":["../src/unify.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,14 +5,30 @@ type Bound = {
|
|
|
5
5
|
v: any;
|
|
6
6
|
open: boolean;
|
|
7
7
|
};
|
|
8
|
+
type ReAtom = {
|
|
9
|
+
v: any;
|
|
10
|
+
src: string;
|
|
11
|
+
norm: string;
|
|
12
|
+
re: RegExp;
|
|
13
|
+
};
|
|
14
|
+
type MustAtom = {
|
|
15
|
+
v: any;
|
|
16
|
+
msg: any;
|
|
17
|
+
};
|
|
8
18
|
type ConstraintState = {
|
|
9
19
|
domain?: 'number' | 'string';
|
|
10
20
|
kind?: any;
|
|
11
21
|
lo?: Bound;
|
|
12
22
|
hi?: Bound;
|
|
13
23
|
neqs: any[];
|
|
24
|
+
res: ReAtom[];
|
|
25
|
+
count?: ConstraintState;
|
|
26
|
+
uniq: boolean;
|
|
27
|
+
musts: MustAtom[];
|
|
28
|
+
clash?: boolean;
|
|
14
29
|
invalid?: string;
|
|
15
30
|
};
|
|
31
|
+
declare function normaliseRe(src: string): [string, string];
|
|
16
32
|
declare class ConstraintVal extends FeatureVal {
|
|
17
33
|
isConstraint: boolean;
|
|
18
34
|
cjo: number;
|
|
@@ -21,14 +37,27 @@ declare class ConstraintVal extends FeatureVal {
|
|
|
21
37
|
lo?: Bound;
|
|
22
38
|
hi?: Bound;
|
|
23
39
|
neqs: any[];
|
|
40
|
+
res: ReAtom[];
|
|
41
|
+
count?: ConstraintState;
|
|
42
|
+
uniq: boolean;
|
|
43
|
+
musts: MustAtom[];
|
|
44
|
+
pending?: {
|
|
45
|
+
atom: string;
|
|
46
|
+
args: any[];
|
|
47
|
+
};
|
|
48
|
+
clash?: boolean;
|
|
24
49
|
invalid?: string;
|
|
50
|
+
invalidWhy?: string;
|
|
25
51
|
constructor(spec: ValSpec & {
|
|
26
52
|
atom?: string;
|
|
27
53
|
state?: ConstraintState;
|
|
28
54
|
}, ctx?: AontuContext);
|
|
29
55
|
private fromAtom;
|
|
30
56
|
unify(peer: Val, ctx: AontuContext): Val;
|
|
57
|
+
private settle;
|
|
31
58
|
private admit;
|
|
59
|
+
private checkMusts;
|
|
60
|
+
private admitContainer;
|
|
32
61
|
private meetKind;
|
|
33
62
|
private meetConstraint;
|
|
34
63
|
private finish;
|
|
@@ -53,4 +82,16 @@ declare class BelowConstraintVal extends ConstraintVal {
|
|
|
53
82
|
declare class NeqConstraintVal extends ConstraintVal {
|
|
54
83
|
constructor(spec: ValSpec, ctx?: AontuContext);
|
|
55
84
|
}
|
|
56
|
-
|
|
85
|
+
declare class ReConstraintVal extends ConstraintVal {
|
|
86
|
+
constructor(spec: ValSpec, ctx?: AontuContext);
|
|
87
|
+
}
|
|
88
|
+
declare class MustConstraintVal extends ConstraintVal {
|
|
89
|
+
constructor(spec: ValSpec, ctx?: AontuContext);
|
|
90
|
+
}
|
|
91
|
+
declare class LengthConstraintVal extends ConstraintVal {
|
|
92
|
+
constructor(spec: ValSpec, ctx?: AontuContext);
|
|
93
|
+
}
|
|
94
|
+
declare class UniqueConstraintVal extends ConstraintVal {
|
|
95
|
+
constructor(spec: ValSpec, ctx?: AontuContext);
|
|
96
|
+
}
|
|
97
|
+
export { normaliseRe, ConstraintVal, MinConstraintVal, MaxConstraintVal, AboveConstraintVal, BelowConstraintVal, NeqConstraintVal, ReConstraintVal, LengthConstraintVal, UniqueConstraintVal, MustConstraintVal, };
|