@mark1russell7/coeval 0.6.1 → 0.6.3
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/README.md +6 -4
- package/build/index.d.ts +189 -22
- package/build/index.d.ts.map +1 -1
- package/build/index.js +390 -105
- package/build/index.js.map +1 -1
- package/package.json +2 -1
- package/src/agree.ts +44 -55
- package/src/deref.ts +17 -6
- package/src/doc.ts +23 -2
- package/src/errors.ts +2 -1
- package/src/evaluate.ts +198 -27
- package/src/formula.ts +2 -2
- package/src/index.ts +6 -1
- package/src/merge.ts +2 -2
- package/src/parts.ts +1 -1
- package/src/reference.ts +86 -15
- package/src/replay.ts +159 -0
- package/src/same.ts +42 -0
- package/src/static.ts +1 -1
- package/src/stdlib.ts +10 -6
package/README.md
CHANGED
|
@@ -29,14 +29,16 @@ A plan evaluates many times without a trace. `evaluate(machine, doc)` gives the
|
|
|
29
29
|
| World | `lookupKind`, `Kind`, `Namespace`, `PartShape`, `ScopeRule`, `CapsRule` | The kinds, with their contracts: the shape of the parts, the type of the data, the kinds that a position permits, the names that a kind binds, the capabilities that it gives its parts, and its effects. A namespace can have a fallback kind |
|
|
30
30
|
| Merges | `mergeWorlds`, `mergeMachines`, `MergeError`, `restrictWorld`, `restrictMachine` | The one merge of worlds and machines. Equal entries merge, and namespaces merge key by key. Each other clash is a conflict, unless the later part names its path in `replaces`. A restriction removes entries and their code. [`docs/COMPOSITION.md`](https://github.com/mark1russell7/coeval/blob/main/docs/COMPOSITION.md) shows each mode of composition |
|
|
31
31
|
| Ladder | `ask` | The evaluator of a verb: the own entry, then the kind, then the default |
|
|
32
|
-
| References | `resolve`, `HostThing`, `Navigator` | A path from a root of the context: `self`, `names`, `world`, `event` or `caps`. A step document can have computed parts, and a walker can give the code of its failure |
|
|
33
|
-
| Plans | `prepare`, `planner`, `evaluate`, `run` | A document compiles one time into code. An evaluator is a function or a compiler |
|
|
34
|
-
| The run side | `run`, `Runner`, `permits`, `narrow`, `partCaps` | Effects in order, parts at the same time, capabilities that only narrow, and an abort. The kernel narrows the capabilities of each part by the contract of its kind |
|
|
32
|
+
| References | `resolve`, `HostThing`, `Navigator` | A path from a root of the context: `self`, `names`, `world`, `event` or `caps`. A step document can have computed parts, and a walker can give the code of its failure. The optional `has` of a host thing tells a field that holds `undefined` from a missing field |
|
|
33
|
+
| Plans | `prepare`, `planner`, `evaluate`, `run`, `EvalOptions`, `EvaluateOptions` | A document compiles one time into code. An evaluator is a function or a compiler. The option `perform` of `evaluate` and `plan.evaluate` is a mock: it answers each effect at once |
|
|
34
|
+
| The run side | `run`, `Runner`, `Perform`, `Effect`, `permits`, `narrow`, `partCaps` | Effects in order, parts at the same time, capabilities that only narrow, and an abort. The kernel narrows the capabilities of each part by the contract of its kind. Each effect has a stable `address` and its `outcome` |
|
|
35
|
+
| Record and replay | `recorder`, `replayer`, `ReplayLog`, `ReplayEntry`, `ReplaySettle`, `ReplayOptions`, `Journal`, `JOURNAL` | A recorder logs each effect of a run with its address and its outcome, and the order of the waits. A replayer answers each effect from the log, and a different request gives `#REPLAY!` |
|
|
35
36
|
| Errors | `Result`, `EvalError`, `Failure`, `failures` | An error value has a code, a reason, a place and a cause. An evaluation does not throw |
|
|
36
37
|
| The static kit | `walk`, `refsOf`, `mapRefs`, `check` | The documents of a document in linear time, its free references, and its problems before a run, each with its place and its JSON path. A check narrows the capabilities as a run does. The hook `known` of a machine names the unknown operations |
|
|
37
38
|
| Trees | `STD_WORLD` (`panel`, `box`), `nearestWalker` | The decorated tree: each field of a node is an attribute that evaluates on demand, one time in an evaluation. A sibling is a path through the parent, and a cycle gives `#CYCLE!` with its chain |
|
|
38
39
|
| The formula kit | `formulaMachine`, `FormulaProfile`, `formulaKnown` | The shared constructs `lit`, `ref`, `record`, `list`, `let`, `fn`, `call`, `if`, `and`, `or`, and the namespaces `ops` and `ext`. A profile gives the rules of a language, for example how the errors of two parts combine. A language extends the kit through the merge. An address gives a thing, not its value |
|
|
39
|
-
| One meaning | `agree`, `reference`, `formulaDefinitions`, `STD_DEFINITIONS`, `generate` | A reference interpreter that compiles nothing, and `agree`, which compares a plan with it and with the second tier of a language. `generate` builds random documents from the kind contracts |
|
|
40
|
+
| One meaning | `agree`, `reference`, `formulaDefinitions`, `STD_DEFINITIONS`, `generate`, `TierInput` | A reference interpreter that compiles nothing, and `agree`, which compares a plan with it and with the second tier of a language. Each tier gets the mock `perform` of `agree`. `generate` builds random documents from the kind contracts |
|
|
41
|
+
| Early cutoff | `sameResult` | A safe equality of two results for a schedule. Plain JSON compares by structure, and each other object only as itself. Two errors need the same code, reason and place |
|
|
40
42
|
|
|
41
43
|
Each rule has an ID in [`docs/SPEC.md`](https://github.com/mark1russell7/coeval/blob/main/docs/SPEC.md), and each ID has a test. [The site](https://mark1russell7.github.io/coeval/) explains each idea with a live diagram.
|
|
42
44
|
|
package/build/index.d.ts
CHANGED
|
@@ -151,8 +151,8 @@ export declare function fromJson(value: unknown): Envelope | undefined;
|
|
|
151
151
|
* with this function does not keep a stale host value.
|
|
152
152
|
*
|
|
153
153
|
* The function does not use the stack for the depth, thus a deep document cannot overflow it. A cycle of lists or
|
|
154
|
-
* records does not make it loop. `sameValue` of `agree`
|
|
155
|
-
*
|
|
154
|
+
* records does not make it loop. `sameValue` of `agree` and `sameResult` use the same walk, and each adds its rules
|
|
155
|
+
* for other values (D20).
|
|
156
156
|
*
|
|
157
157
|
* @param a - The first value.
|
|
158
158
|
* @param b - The second value.
|
|
@@ -162,7 +162,7 @@ export declare function docEquals(a: unknown, b: unknown): boolean;
|
|
|
162
162
|
//#endregion
|
|
163
163
|
//#region src/errors.d.ts
|
|
164
164
|
/** The codes that the kernel gives. */
|
|
165
|
-
type KernelCode = "#KIND?" | "#NOEVAL" | "#PART?" | "#NAME?" | "#REF!" | "#N/A" | "#CYCLE!" | "#STEP?" | "#VALUE!" | "#NUM!" | "#ARGS" | "#CAP!" | "#CALC!" | "#DEPTH!" | "#ABORT";
|
|
165
|
+
type KernelCode = "#KIND?" | "#NOEVAL" | "#PART?" | "#NAME?" | "#REF!" | "#N/A" | "#CYCLE!" | "#STEP?" | "#VALUE!" | "#NUM!" | "#ARGS" | "#CAP!" | "#CALC!" | "#DEPTH!" | "#ABORT" | "#REPLAY!";
|
|
166
166
|
/** The code of an error value. A language can add its own codes. Each code starts with `#`. */
|
|
167
167
|
type ErrorCode = KernelCode | `#${string}`;
|
|
168
168
|
/**
|
|
@@ -270,12 +270,22 @@ interface HostThing {
|
|
|
270
270
|
/** A short text for a reader, for example `node card`. */
|
|
271
271
|
readonly label: string;
|
|
272
272
|
/**
|
|
273
|
-
* This function answers one step.
|
|
273
|
+
* This function answers one step. A field that holds `undefined` also gives `undefined`. The function `has` tells
|
|
274
|
+
* the two cases apart (DEREF.HOST-UNDEFINED).
|
|
274
275
|
*
|
|
275
276
|
* @param key - The key of the step.
|
|
276
277
|
* @returns What the step reaches, or `undefined` when it reaches nothing.
|
|
277
278
|
*/
|
|
278
279
|
deref(key: Key): Thing | undefined;
|
|
280
|
+
/**
|
|
281
|
+
* This optional function tells if the thing has a field for a key. The kernel asks it only when `deref` gives
|
|
282
|
+
* `undefined`. Then `true` tells that the field holds `undefined`. A thing without `has` reads `undefined` as a
|
|
283
|
+
* missing field.
|
|
284
|
+
*
|
|
285
|
+
* @param key - The key of the step.
|
|
286
|
+
* @returns `true` when the thing has the field.
|
|
287
|
+
*/
|
|
288
|
+
has?(key: Key): boolean;
|
|
279
289
|
/**
|
|
280
290
|
* This function gives the thing as a value, when a reference ends on it.
|
|
281
291
|
*
|
|
@@ -287,7 +297,7 @@ interface HostThing {
|
|
|
287
297
|
* path without one call for each step.
|
|
288
298
|
*
|
|
289
299
|
* @param keys - The keys.
|
|
290
|
-
* @returns What the keys reach, or `undefined` when they reach nothing.
|
|
300
|
+
* @returns What the keys reach, or `undefined` when they reach nothing. `{ thing: undefined }` tells that the keys reach a field that holds `undefined`.
|
|
291
301
|
*/
|
|
292
302
|
resolve?(keys: readonly Key[]): {
|
|
293
303
|
readonly thing: Thing;
|
|
@@ -844,6 +854,7 @@ export declare function partCaps(rules: readonly CapsRule[] | undefined, path: r
|
|
|
844
854
|
type Steps = Generator<Promise<unknown>, Result, unknown>;
|
|
845
855
|
/** An effect that an evaluation caused, in the order of the effects. */
|
|
846
856
|
interface Effect {
|
|
857
|
+
/** The number of effects before this effect. Under `all`, this number follows the order of the host. */
|
|
847
858
|
readonly index: number;
|
|
848
859
|
/** The kind of the effect, as a text with dots. */
|
|
849
860
|
readonly kind: string;
|
|
@@ -858,9 +869,48 @@ interface Effect {
|
|
|
858
869
|
readonly place: readonly Key[];
|
|
859
870
|
/** The context of the document that caused the effect: its names, its node and its capabilities. */
|
|
860
871
|
readonly context: Context;
|
|
872
|
+
/**
|
|
873
|
+
* The stable address of the effect (RUN.ADDRESS). The order of the host does not change it. The address has the
|
|
874
|
+
* keys of the place, a `#` and the count of the earlier effects at that place in its scope. An example is
|
|
875
|
+
* `1/bind/x#0`. Each item of `all` is a scope, and its prefix comes first: `all0.1/` is the item 1 of the first `all`
|
|
876
|
+
* of the scope. The kernel gives each effect its address.
|
|
877
|
+
*/
|
|
878
|
+
readonly address?: string;
|
|
879
|
+
/**
|
|
880
|
+
* The outcome of the effect: the result that it gave its document (RUN.OUTCOME). The kernel sets it when the answer
|
|
881
|
+
* comes. It stays `undefined` when the run stops first, for example at an abort.
|
|
882
|
+
*/
|
|
883
|
+
readonly outcome?: Result;
|
|
861
884
|
}
|
|
862
|
-
/**
|
|
885
|
+
/**
|
|
886
|
+
* The host side of a run: it does one effect, and gives its result. A throw or a rejection is an error value, and a
|
|
887
|
+
* `Failure` gives its own error value. In an evaluation, this function is a mock: it answers at once, and a promise
|
|
888
|
+
* from it gives `#CALC!` (RUN.MOCK).
|
|
889
|
+
*/
|
|
863
890
|
type Perform = (effect: Effect) => unknown;
|
|
891
|
+
/** The key of the journal of a recorder or of a replayer, on its function. Two copies of the kernel share it. */
|
|
892
|
+
export declare const JOURNAL: unique symbol;
|
|
893
|
+
/**
|
|
894
|
+
* The journal of a recorder or of a replayer, on its function `perform`. The kernel tells it the order in which the
|
|
895
|
+
* waits of each `all` settle. In a replay, the kernel asks the journal for that order (RUN.RECORD, RUN.REPLAY).
|
|
896
|
+
*/
|
|
897
|
+
interface Journal {
|
|
898
|
+
/**
|
|
899
|
+
* This function gets the item whose wait settled.
|
|
900
|
+
*
|
|
901
|
+
* @param all - The address of the `all`, for example `all0` or `all0.1/all0`.
|
|
902
|
+
* @param item - The index of the item.
|
|
903
|
+
*/
|
|
904
|
+
readonly settled?: (all: string, item: number) => void;
|
|
905
|
+
/**
|
|
906
|
+
* This function gives the item whose wait settles next.
|
|
907
|
+
*
|
|
908
|
+
* @param all - The address of the `all`.
|
|
909
|
+
* @param waiting - The indices of the items that wait.
|
|
910
|
+
* @returns The index of an item that waits, or `undefined` for the order of the host.
|
|
911
|
+
*/
|
|
912
|
+
readonly next?: (all: string, waiting: readonly number[]) => number | undefined;
|
|
913
|
+
}
|
|
864
914
|
/**
|
|
865
915
|
* The runtime of one evaluation or run. Compiled code gets it with the context, and asks it to resolve paths and
|
|
866
916
|
* to cause effects.
|
|
@@ -886,7 +936,7 @@ interface Runtime {
|
|
|
886
936
|
* @param kind - The kind of the effect.
|
|
887
937
|
* @param payload - The data of the effect.
|
|
888
938
|
* @param place - The place of the document.
|
|
889
|
-
* @returns The payload, or an error value.
|
|
939
|
+
* @returns The answer of the mock, the payload without a mock, or an error value.
|
|
890
940
|
*/
|
|
891
941
|
effect(ctx: Context, kind: Cap, payload: unknown, place: readonly Key[]): Result;
|
|
892
942
|
/**
|
|
@@ -1016,7 +1066,7 @@ interface EvalInput {
|
|
|
1016
1066
|
*
|
|
1017
1067
|
* @param kind - The kind of the effect, for example `log`.
|
|
1018
1068
|
* @param payload - The data of the effect.
|
|
1019
|
-
* @returns The payload, or
|
|
1069
|
+
* @returns The answer of the mock, the payload without a mock, or an error value, for example `#CAP!`.
|
|
1020
1070
|
*/
|
|
1021
1071
|
effect(kind: Cap, payload: unknown): Result;
|
|
1022
1072
|
/**
|
|
@@ -1058,7 +1108,7 @@ interface RunInput {
|
|
|
1058
1108
|
resolve(path: readonly unknown[], options?: ResolveOptions): Resolution;
|
|
1059
1109
|
/**
|
|
1060
1110
|
* This function causes an effect. In a run, the host does the effect, and the steps wait when the host waits. In
|
|
1061
|
-
* an evaluation, the effect gives its payload. Take its result with `yield*`.
|
|
1111
|
+
* an evaluation, a mock answers the effect at once, or the effect gives its payload. Take its result with `yield*`.
|
|
1062
1112
|
*
|
|
1063
1113
|
* @param kind - The kind of the effect, for example `log`.
|
|
1064
1114
|
* @param payload - The data of the effect.
|
|
@@ -1196,6 +1246,18 @@ interface RunOptions {
|
|
|
1196
1246
|
interface EvalOptions {
|
|
1197
1247
|
/** A list that gets each effect, in its order. */
|
|
1198
1248
|
readonly effects?: Effect[];
|
|
1249
|
+
/**
|
|
1250
|
+
* The mock of the host (RUN.MOCK). It answers each effect at once, and its answer is the result of the effect.
|
|
1251
|
+
* Without it, an effect gives its payload (RUN.EVAL).
|
|
1252
|
+
*/
|
|
1253
|
+
readonly perform?: Perform;
|
|
1254
|
+
}
|
|
1255
|
+
/** The options of `evaluate`. */
|
|
1256
|
+
interface EvaluateOptions {
|
|
1257
|
+
/** The type of a bare root value. */
|
|
1258
|
+
readonly declaredType?: string;
|
|
1259
|
+
/** The mock of the host (RUN.MOCK). Without it, an effect gives its payload (RUN.EVAL). */
|
|
1260
|
+
readonly perform?: Perform;
|
|
1199
1261
|
}
|
|
1200
1262
|
/** The options of a compilation. */
|
|
1201
1263
|
interface PrepareOptions {
|
|
@@ -1212,10 +1274,11 @@ interface Plan {
|
|
|
1212
1274
|
/** The compiled root document. */
|
|
1213
1275
|
readonly root: CompiledPart;
|
|
1214
1276
|
/**
|
|
1215
|
-
* This function evaluates the document. It does not wait, and the host does no effect.
|
|
1277
|
+
* This function evaluates the document. It does not wait, and the host does no effect. A mock can answer each
|
|
1278
|
+
* effect at once (RUN.MOCK).
|
|
1216
1279
|
*
|
|
1217
1280
|
* @param context - The names and the capabilities at the root.
|
|
1218
|
-
* @param options - A list that gets the effects.
|
|
1281
|
+
* @param options - A list that gets the effects, and the mock of the host.
|
|
1219
1282
|
* @returns The result.
|
|
1220
1283
|
*/
|
|
1221
1284
|
evaluate(context?: Context, options?: EvalOptions): Result;
|
|
@@ -1252,15 +1315,16 @@ export declare function planner(machine: Machine, options?: PrepareOptions): (do
|
|
|
1252
1315
|
*
|
|
1253
1316
|
* The verb `eval` goes up the ladder for each document. The kind of the document tells where its parts are. The
|
|
1254
1317
|
* evaluator gets each part sealed: it can evaluate the part, and it cannot read its value. A failure gives an error
|
|
1255
|
-
* value, and the function does not throw. An effect is recorded in its order, and
|
|
1318
|
+
* value, and the function does not throw. An effect is recorded in its order, and the host does not do it. A mock
|
|
1319
|
+
* can answer each effect at once (RUN.MOCK).
|
|
1256
1320
|
*
|
|
1257
1321
|
* @param machine - The world and the code of the evaluators.
|
|
1258
1322
|
* @param doc - The document, as JSON.
|
|
1259
1323
|
* @param context - The names and the capabilities at the root.
|
|
1260
|
-
* @param
|
|
1324
|
+
* @param options - The type of a bare root value, or the options: that type and the mock of the host.
|
|
1261
1325
|
* @returns The result, the trace and the effects in their order.
|
|
1262
1326
|
*/
|
|
1263
|
-
export declare function evaluate(machine: Machine, doc: unknown, context?: Context,
|
|
1327
|
+
export declare function evaluate(machine: Machine, doc: unknown, context?: Context, options?: string | EvaluateOptions): Run;
|
|
1264
1328
|
/**
|
|
1265
1329
|
* This function runs a document: an evaluation in which the host does each effect. A runner waits for its
|
|
1266
1330
|
* parts and for its effects, thus a step can read the result of the step before. The part of the run before the
|
|
@@ -1941,16 +2005,18 @@ interface ReferenceOptions {
|
|
|
1941
2005
|
readonly definitions?: Definitions;
|
|
1942
2006
|
/** A list that gets each effect, in its order. */
|
|
1943
2007
|
readonly effects?: Effect[];
|
|
2008
|
+
/** The mock of the host (RUN.MOCK). It answers each effect at once. Without it, an effect gives its payload. */
|
|
2009
|
+
readonly perform?: Perform;
|
|
1944
2010
|
}
|
|
1945
2011
|
/**
|
|
1946
2012
|
* This function evaluates a document by the rules, without a compilation. It is the reference of the plans: a plan,
|
|
1947
2013
|
* a traced plan and the second tier of a language must give its results. It covers evaluations, not runs: an effect
|
|
1948
|
-
* gives its payload, and a part that waits gives `#CALC!`.
|
|
2014
|
+
* gives the answer of the mock or its payload, and a part that waits gives `#CALC!`.
|
|
1949
2015
|
*
|
|
1950
2016
|
* @param machine - The world and the code of the evaluators.
|
|
1951
2017
|
* @param doc - The document.
|
|
1952
2018
|
* @param context - The names and the capabilities at the root.
|
|
1953
|
-
* @param options - The type of a bare root value, the definitions of compiled code,
|
|
2019
|
+
* @param options - The type of a bare root value, the definitions of compiled code, a list for the effects and a mock.
|
|
1954
2020
|
* @returns The result.
|
|
1955
2021
|
*/
|
|
1956
2022
|
export declare function reference(machine: Machine, doc: unknown, context?: Context, options?: ReferenceOptions): Result;
|
|
@@ -1984,6 +2050,11 @@ interface TierResult {
|
|
|
1984
2050
|
readonly result: Result;
|
|
1985
2051
|
readonly effects?: readonly Effect[];
|
|
1986
2052
|
}
|
|
2053
|
+
/** What `agree` gives the second tier of a language beside the document and the context. */
|
|
2054
|
+
interface TierInput {
|
|
2055
|
+
/** The mock of the host, when `agree` has one (AGREE.MOCK). The tier answers each effect with it. */
|
|
2056
|
+
readonly perform?: Perform;
|
|
2057
|
+
}
|
|
1987
2058
|
/** The options of `agree`. */
|
|
1988
2059
|
interface AgreeOptions {
|
|
1989
2060
|
/** The type of a bare root value. */
|
|
@@ -1997,9 +2068,15 @@ interface AgreeOptions {
|
|
|
1997
2068
|
*
|
|
1998
2069
|
* @param doc - The document.
|
|
1999
2070
|
* @param context - The context.
|
|
2071
|
+
* @param input - The mock of the host, when `agree` has one.
|
|
2000
2072
|
* @returns The result, or the result with the effects.
|
|
2001
2073
|
*/
|
|
2002
|
-
readonly other?: (doc: unknown, context: Context) => Result | TierResult;
|
|
2074
|
+
readonly other?: (doc: unknown, context: Context, input: TierInput) => Result | TierResult;
|
|
2075
|
+
/**
|
|
2076
|
+
* The mock of the host (RUN.MOCK, AGREE.MOCK). Each tier gets it, thus the tiers agree on documents with effects. A
|
|
2077
|
+
* mock must give the same answer to the same effect, because each tier asks it again.
|
|
2078
|
+
*/
|
|
2079
|
+
readonly perform?: Perform;
|
|
2003
2080
|
/**
|
|
2004
2081
|
* This function compares two values that the rules of `sameValue` do not know, for example two dates.
|
|
2005
2082
|
*
|
|
@@ -2043,8 +2120,9 @@ type Agreement = {
|
|
|
2043
2120
|
* errors have the same code and place. Each other object is the same only as itself, unless the rule of the caller
|
|
2044
2121
|
* tells otherwise.
|
|
2045
2122
|
*
|
|
2046
|
-
* `docEquals`
|
|
2047
|
-
*
|
|
2123
|
+
* `docEquals` and `sameResult` use the same walk (D20). `docEquals` has no rules for closures, for `Held` values and
|
|
2124
|
+
* for a rule of the caller. `sameResult` is for an early cutoff, thus a closure is the same there only as itself, and
|
|
2125
|
+
* two errors also need the same reason.
|
|
2048
2126
|
*
|
|
2049
2127
|
* @param a - The first value.
|
|
2050
2128
|
* @param b - The second value.
|
|
@@ -2056,16 +2134,105 @@ export declare function sameValue(a: unknown, b: unknown, equal?: (a: unknown, b
|
|
|
2056
2134
|
* This function evaluates a document with a plan and with other tiers, and compares the results (PLAN.AGREES). Two
|
|
2057
2135
|
* results agree when they have the same value by `sameValue`, or errors with the same code, and the same place when
|
|
2058
2136
|
* both have one. The effects must have the same kinds, places and payloads, in the same order. A language gives its
|
|
2059
|
-
* own tier with the option `other`.
|
|
2137
|
+
* own tier with the option `other`. Each tier gets the mock of the option `perform` (AGREE.MOCK).
|
|
2060
2138
|
*
|
|
2061
2139
|
* @param machine - The world and the code of the evaluators.
|
|
2062
2140
|
* @param doc - The document.
|
|
2063
2141
|
* @param context - The names and the capabilities at the root.
|
|
2064
|
-
* @param options - The tiers, the definitions for the reference, the rules of the comparison
|
|
2142
|
+
* @param options - The tiers, the definitions for the reference, the rules of the comparison, the second tier and the mock.
|
|
2065
2143
|
* @returns The result of the plan, or the first tier that disagrees and the reason.
|
|
2066
2144
|
*/
|
|
2067
2145
|
export declare function agree(machine: Machine, doc: unknown, context?: Context, options?: AgreeOptions): Agreement;
|
|
2068
2146
|
//#endregion
|
|
2147
|
+
//#region src/same.d.ts
|
|
2148
|
+
/**
|
|
2149
|
+
* This function tells if two results are the same for an early cutoff (RESULT.SAME). A schedule uses it to stop the
|
|
2150
|
+
* work when a part that evaluates again gives the same result. A wrong `true` keeps a stale value, but a wrong `false`
|
|
2151
|
+
* only costs work. Thus each rule gives `false` when it is not sure.
|
|
2152
|
+
*
|
|
2153
|
+
* - Two values compare by the rules of `docEquals`. Lists and plain records compare by their items and fields. Each
|
|
2154
|
+
* other value compares with `Object.is`.
|
|
2155
|
+
* - Thus `-0` is not `0`, and `NaN` is `NaN`. A date, a map and a closure of `fn` are the same only as themselves.
|
|
2156
|
+
* - Two errors are the same when they have the same code, reason and place (RESULT.SAME-ERROR). The cause is not
|
|
2157
|
+
* compared. A `Held` value compares its error by the same rule.
|
|
2158
|
+
* - A value and an error are not the same.
|
|
2159
|
+
*
|
|
2160
|
+
* `sameValue` of `agree` uses the same walk, with rules for two tiers (D20). It compares two closures by their
|
|
2161
|
+
* parameters, and two errors by their code and place.
|
|
2162
|
+
*
|
|
2163
|
+
* @param a - The earlier result.
|
|
2164
|
+
* @param b - The new result.
|
|
2165
|
+
* @param equal - The rule of the host for two values, for example two dates. It answers first, and `undefined` gives the rules above.
|
|
2166
|
+
* @returns `true` when the results are the same.
|
|
2167
|
+
*/
|
|
2168
|
+
export declare function sameResult(a: Result<unknown>, b: Result<unknown>, equal?: (a: unknown, b: unknown) => boolean | undefined): boolean;
|
|
2169
|
+
//#endregion
|
|
2170
|
+
//#region src/replay.d.ts
|
|
2171
|
+
/** One effect of a log: its address, its request and its outcome. */
|
|
2172
|
+
interface ReplayEntry {
|
|
2173
|
+
/** The address of the effect (RUN.ADDRESS), for example `1#0` or `all0.1/1#0`. */
|
|
2174
|
+
readonly address: string;
|
|
2175
|
+
/** The kind of the effect, as a text with dots. */
|
|
2176
|
+
readonly kind: string;
|
|
2177
|
+
readonly payload: unknown;
|
|
2178
|
+
/** The outcome of the effect (RUN.OUTCOME). It is absent when the recorded run stopped before the answer came. */
|
|
2179
|
+
readonly outcome?: Result;
|
|
2180
|
+
/** `true` when the host made the run wait for the outcome. */
|
|
2181
|
+
readonly waited: boolean;
|
|
2182
|
+
}
|
|
2183
|
+
/** An item of an `all` whose wait settled in the recorded run. */
|
|
2184
|
+
interface ReplaySettle {
|
|
2185
|
+
/** The address of the `all`, for example `all0` or `all0.1/all0`. */
|
|
2186
|
+
readonly all: string;
|
|
2187
|
+
/** The index of the item. */
|
|
2188
|
+
readonly item: number;
|
|
2189
|
+
}
|
|
2190
|
+
/** The log of a run: each effect in the order of the requests, and the order in which the waits of each `all` settled. */
|
|
2191
|
+
interface ReplayLog {
|
|
2192
|
+
readonly effects: readonly ReplayEntry[];
|
|
2193
|
+
readonly settles: readonly ReplaySettle[];
|
|
2194
|
+
}
|
|
2195
|
+
/** A recorder: the function `perform` for a run, and the log of that run (RUN.RECORD). */
|
|
2196
|
+
interface Recorder {
|
|
2197
|
+
/** The function to give the run. It gives each effect to the function `perform` of the host, and it records the effect. */
|
|
2198
|
+
readonly perform: Perform;
|
|
2199
|
+
/**
|
|
2200
|
+
* This function gives the log of the run until this time. An effect gets its outcome when the answer comes.
|
|
2201
|
+
*
|
|
2202
|
+
* @returns The log.
|
|
2203
|
+
*/
|
|
2204
|
+
log(): ReplayLog;
|
|
2205
|
+
}
|
|
2206
|
+
/** The options of a replayer. */
|
|
2207
|
+
interface ReplayOptions {
|
|
2208
|
+
/**
|
|
2209
|
+
* `false`: each answer comes at once, also for an effect that waited in the recorded run. An evaluation needs this
|
|
2210
|
+
* value, because it does not wait. The default is `true`: an effect waits when it waited in the recorded run.
|
|
2211
|
+
*/
|
|
2212
|
+
readonly wait?: boolean;
|
|
2213
|
+
}
|
|
2214
|
+
/**
|
|
2215
|
+
* This function makes a recorder (RUN.RECORD). The recorder gives each effect to the function `perform` of the host.
|
|
2216
|
+
* Its log keeps each effect with its address, its kind, its payload and the outcome that the kernel gives it. The log
|
|
2217
|
+
* also keeps the order in which the waits of each `all` settle.
|
|
2218
|
+
*
|
|
2219
|
+
* @param perform - The function of the host. Without it, each effect gives its payload, as in a run without a host.
|
|
2220
|
+
* @returns The function `perform` for the run, and the log.
|
|
2221
|
+
*/
|
|
2222
|
+
export declare function recorder(perform?: Perform): Recorder;
|
|
2223
|
+
/**
|
|
2224
|
+
* This function makes a replayer: a function `perform` that answers each effect from a log, by its address (RUN.REPLAY). A
|
|
2225
|
+
* recorded error comes again with its code, its reason, its place and its cause. The waits of each `all` settle in the
|
|
2226
|
+
* recorded order. An effect that the log does not have at its address gives `#REPLAY!` (RUN.REPLAY-MISMATCH).
|
|
2227
|
+
*
|
|
2228
|
+
* A replayer keeps its place in the order of the waits, thus each run needs a new replayer.
|
|
2229
|
+
*
|
|
2230
|
+
* @param log - The log of a recorder.
|
|
2231
|
+
* @param options - `wait: false` for an evaluation.
|
|
2232
|
+
* @returns The function `perform` for the replay.
|
|
2233
|
+
*/
|
|
2234
|
+
export declare function replayer(log: ReplayLog, options?: ReplayOptions): Perform;
|
|
2235
|
+
//#endregion
|
|
2069
2236
|
//#region src/generate.d.ts
|
|
2070
2237
|
/** A source of random numbers with a seed. The same seed gives the same numbers. */
|
|
2071
2238
|
interface Random {
|
|
@@ -2147,5 +2314,5 @@ export declare function typesOf(world: World): readonly (readonly Key[])[];
|
|
|
2147
2314
|
*/
|
|
2148
2315
|
export declare function generate(world: World, options: GenerateOptions): unknown;
|
|
2149
2316
|
//#endregion
|
|
2150
|
-
export type { AgreeOptions, Agreement, Alias, AllOptions, Answer, AskOptions, Cap, CapsRule, CheckOptions, Classification, Closure, Code, CompileInput, CompiledEvaluator, CompiledPart, CompiledRunner, Construct, Context, Part as ContextPart, Definitions, DerefCode, DocParts, DocVisit, Edge, Effect, Envelope, ErrorCode, EvalError, EvalFn, EvalInput, EvalOptions, Evaluator, ExtFn, Failed, FormulaProfile, GenerateOptions, Give, Header, Hop, HopBy, HostThing, Issue, Json, JsonRecord, KernelCode, Key, Kind, KindSource, LazyOp, Lookup, Machine, MachinePart, MergeConflict, MergePath, NamesSource, Namespace, Navigator, NearestOptions, OpFn, OrderProblem, Outcome, Part$1 as Part, PartInfo, Shape as PartShape, PartSlot, PartsSpec, Perform, Plan, PrepareOptions, Random, RefUse, ReferenceOptions, Resolution, ResolveCode, ResolveOptions, Result, Root, Run, RunCode, RunFn, RunInput, RunOptions, RunPart, Rung, Runner, Runtime, ScopeRule, Shape$1 as Shape, Side, Split, Step, StepSpec, Steps, StopSignal, Stored, Thing, Tier, TierResult, TraceNode, TypeRef, Use, WalkInput, WalkOptions, WalkProblem, WalkResult, Walker, World, WorldEntry, WorldPart };
|
|
2317
|
+
export type { AgreeOptions, Agreement, Alias, AllOptions, Answer, AskOptions, Cap, CapsRule, CheckOptions, Classification, Closure, Code, CompileInput, CompiledEvaluator, CompiledPart, CompiledRunner, Construct, Context, Part as ContextPart, Definitions, DerefCode, DocParts, DocVisit, Edge, Effect, Envelope, ErrorCode, EvalError, EvalFn, EvalInput, EvalOptions, EvaluateOptions, Evaluator, ExtFn, Failed, FormulaProfile, GenerateOptions, Give, Header, Hop, HopBy, HostThing, Issue, Journal, Json, JsonRecord, KernelCode, Key, Kind, KindSource, LazyOp, Lookup, Machine, MachinePart, MergeConflict, MergePath, NamesSource, Namespace, Navigator, NearestOptions, OpFn, OrderProblem, Outcome, Part$1 as Part, PartInfo, Shape as PartShape, PartSlot, PartsSpec, Perform, Plan, PrepareOptions, Random, Recorder, RefUse, ReferenceOptions, ReplayEntry, ReplayLog, ReplayOptions, ReplaySettle, Resolution, ResolveCode, ResolveOptions, Result, Root, Run, RunCode, RunFn, RunInput, RunOptions, RunPart, Rung, Runner, Runtime, ScopeRule, Shape$1 as Shape, Side, Split, Step, StepSpec, Steps, StopSignal, Stored, Thing, Tier, TierInput, TierResult, TraceNode, TypeRef, Use, WalkInput, WalkOptions, WalkProblem, WalkResult, Walker, World, WorldEntry, WorldPart };
|
|
2151
2318
|
//# sourceMappingURL=index.d.ts.map
|
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":["Part","Shape"],"sources":["../src/doc.ts","../src/errors.ts","../src/deref.ts","../src/world.ts","../src/ladder.ts","../src/evaluate.ts","../src/merge.ts","../src/classify.ts","../src/parts.ts","../src/stdlib.ts","../src/order.ts","../src/context.ts","../src/static.ts","../src/formula.ts","../src/reference.ts","../src/agree.ts","../src/generate.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":["Part","Shape"],"sources":["../src/doc.ts","../src/errors.ts","../src/deref.ts","../src/world.ts","../src/ladder.ts","../src/evaluate.ts","../src/merge.ts","../src/classify.ts","../src/parts.ts","../src/stdlib.ts","../src/order.ts","../src/context.ts","../src/static.ts","../src/formula.ts","../src/reference.ts","../src/agree.ts","../src/same.ts","../src/replay.ts","../src/generate.ts"],"mappings":"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"}
|