@bjornpagen/bumbledb 0.5.0 → 0.7.0

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.
Files changed (100) hide show
  1. package/COOKBOOK.md +140 -136
  2. package/README.md +24 -11
  3. package/dist/closed.d.ts +7 -5
  4. package/dist/closed.d.ts.map +1 -1
  5. package/dist/closed.js +4 -1
  6. package/dist/closed.js.map +1 -1
  7. package/dist/count.js +1 -1
  8. package/dist/count.js.map +1 -1
  9. package/dist/db.d.ts +110 -73
  10. package/dist/db.d.ts.map +1 -1
  11. package/dist/db.js +172 -116
  12. package/dist/db.js.map +1 -1
  13. package/dist/exhume.d.ts +22 -10
  14. package/dist/exhume.d.ts.map +1 -1
  15. package/dist/exhume.js +42 -9
  16. package/dist/exhume.js.map +1 -1
  17. package/dist/face.d.ts +10 -6
  18. package/dist/face.d.ts.map +1 -1
  19. package/dist/face.js.map +1 -1
  20. package/dist/fields.d.ts +38 -16
  21. package/dist/fields.d.ts.map +1 -1
  22. package/dist/fields.js +33 -8
  23. package/dist/fields.js.map +1 -1
  24. package/dist/index.d.ts +9 -6
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +5 -2
  27. package/dist/index.js.map +1 -1
  28. package/dist/lower.d.ts +9 -9
  29. package/dist/lower.d.ts.map +1 -1
  30. package/dist/lower.js +17 -12
  31. package/dist/lower.js.map +1 -1
  32. package/dist/marshal.d.ts +17 -7
  33. package/dist/marshal.d.ts.map +1 -1
  34. package/dist/marshal.js +32 -10
  35. package/dist/marshal.js.map +1 -1
  36. package/dist/native.d.ts +60 -9
  37. package/dist/native.d.ts.map +1 -1
  38. package/dist/native.js.map +1 -1
  39. package/dist/query/atom.d.ts +199 -203
  40. package/dist/query/atom.d.ts.map +1 -1
  41. package/dist/query/atom.js +39 -48
  42. package/dist/query/atom.js.map +1 -1
  43. package/dist/query/find.d.ts +116 -0
  44. package/dist/query/find.d.ts.map +1 -0
  45. package/dist/query/{select.js → find.js} +22 -22
  46. package/dist/query/find.js.map +1 -0
  47. package/dist/query/lower.d.ts +131 -158
  48. package/dist/query/lower.d.ts.map +1 -1
  49. package/dist/query/lower.js +505 -494
  50. package/dist/query/lower.js.map +1 -1
  51. package/dist/query/predicate.d.ts +22 -14
  52. package/dist/query/predicate.d.ts.map +1 -1
  53. package/dist/query/predicate.js +35 -42
  54. package/dist/query/predicate.js.map +1 -1
  55. package/dist/query/run.d.ts +8 -8
  56. package/dist/query/run.d.ts.map +1 -1
  57. package/dist/query/run.js +16 -21
  58. package/dist/query/run.js.map +1 -1
  59. package/dist/query/scope.d.ts +139 -74
  60. package/dist/query/scope.d.ts.map +1 -1
  61. package/dist/query/scope.js +80 -33
  62. package/dist/query/scope.js.map +1 -1
  63. package/dist/relation.d.ts.map +1 -1
  64. package/dist/relation.js +3 -1
  65. package/dist/relation.js.map +1 -1
  66. package/dist/schema.d.ts.map +1 -1
  67. package/dist/schema.js +12 -2
  68. package/dist/schema.js.map +1 -1
  69. package/dist/spec.d.ts +20 -10
  70. package/dist/spec.d.ts.map +1 -1
  71. package/dist/spec.js.map +1 -1
  72. package/dist/statements.d.ts +22 -2
  73. package/dist/statements.d.ts.map +1 -1
  74. package/dist/statements.js +26 -5
  75. package/dist/statements.js.map +1 -1
  76. package/package.json +3 -3
  77. package/src/closed.ts +13 -7
  78. package/src/count.ts +1 -1
  79. package/src/db.ts +293 -177
  80. package/src/exhume.ts +48 -11
  81. package/src/face.ts +13 -6
  82. package/src/fields.ts +51 -15
  83. package/src/index.ts +12 -8
  84. package/src/lower.ts +17 -12
  85. package/src/marshal.ts +38 -13
  86. package/src/native.ts +59 -8
  87. package/src/query/atom.ts +297 -275
  88. package/src/query/find.ts +212 -0
  89. package/src/query/lower.ts +692 -724
  90. package/src/query/predicate.ts +37 -45
  91. package/src/query/run.ts +17 -22
  92. package/src/query/scope.ts +184 -90
  93. package/src/relation.ts +3 -1
  94. package/src/schema.ts +14 -2
  95. package/src/spec.ts +21 -9
  96. package/src/statements.ts +30 -6
  97. package/dist/query/select.d.ts +0 -128
  98. package/dist/query/select.d.ts.map +0 -1
  99. package/dist/query/select.js.map +0 -1
  100. package/src/query/select.ts +0 -215
@@ -1 +1 @@
1
- {"version":3,"file":"atom.d.ts","sourceRoot":"","sources":["../../src/query/atom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atom.d.ts","sourceRoot":"","sources":["../../src/query/atom.ts"],"names":[],"mappings":"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"}
@@ -1,33 +1,34 @@
1
1
  /**
2
- * Atoms and conditions, STRUCTURAL edition — the body vocabulary of a
3
- * rule, mirroring the engine IR variant for variant
2
+ * Atoms and conditions, REFERENCE-IDENTITY edition — the body vocabulary of
3
+ * a rule, mirroring the engine IR variant for variant
4
4
  * (`bumbledb/crates/bumbledb/src/ir.rs`, the bijection target;
5
5
  * `docs/architecture/20-query-ir.md` normative). A `match` binding record
6
- * binds fields to vars, params, ∈-set params, or bare structural literals
7
- * — a closed-reference field's literal is its handle NAME, and a plain
8
- * ARRAY of names there is membership, folded into the program (closed-only
9
- * by owner ruling; see {@link BindingInput})
6
+ * binds fields to VARIABLES (minted by {@link v}), params, ∈-set params, or
7
+ * bare structural literals — a closed-reference field's literal is its
8
+ * handle NAME, and a plain ARRAY of names there is membership
10
9
  * (unmentioned fields ARE the wildcard — no wildcard value exists);
11
10
  * `not(Rel, {...})` is negation-as-position (anti-join); `eq`/`ne` and the
12
11
  * order roster, `pointIn` (the one spelling of `ir::CmpOp::PointIn`,
13
12
  * always lowered interval-left), `allen` (the 13-bit mask pair
14
13
  * comparison), and `and`/`or` (the input condition-tree grammar) complete
15
14
  * the roster. Nothing beyond the IR exists here — and the walls the engine
16
- * enforces at prepare are TYPES first: a var joins only domain-equal
17
- * fields (`JoinOk`, checked against the rule environment AND against the
18
- * binding record's own same-named siblings two first occurrences of one
19
- * name inside one record are a join too), an
20
- * interval-typed var under a non-`pointIn` comparison is unwritable, and a
21
- * negated atom's variables must be positively bound (env membership IS the
22
- * safety rule). Every condition value carries its operands raw the
23
- * runtime representation is the type-inference carrier, no phantoms.
15
+ * enforces at prepare are TYPES first: a variable joins only class-equal
16
+ * fields, judged at every binding position against the var's MINT slot
17
+ * ({@link MintSlotOf}); because {@link JoinOk} is an equality, that ALONE
18
+ * makes every cross-binding join transitively class-equal (the env/sibling
19
+ * checks the name-keyed edition needed are gone). An interval-typed var
20
+ * under a non-`pointIn` comparison is unwritable. BOUNDNESS (a negated
21
+ * atom's variables must be positively bound) is the one check types cannot
22
+ * carry object identity is invisible to TS so it is a construction-time
23
+ * wall only.
24
24
  *
25
25
  * This module also owns the plain runtime DATA a built rule is made of
26
26
  * (`RuleData`/`RecData` and friends): frozen values the lowering walks —
27
- * pure data, so lowering stays a pure, stable function of the query value.
27
+ * pure data (variable references included), so lowering stays a pure,
28
+ * stable function of the query value.
28
29
  */
29
30
  import * as errors from "@superbuilders/errors";
30
- import { isTerm } from "#query/scope.ts";
31
+ import { inferred, isTerm } from "#query/scope.ts";
31
32
  /** Builds one comparison value. */
32
33
  function comparison(op, lhs, rhs, mask) {
33
34
  return Object.freeze({ cond: "cmp", op, lhs, rhs, mask });
@@ -44,10 +45,10 @@ function assertTermSide(op, lhs, rhs) {
44
45
  }
45
46
  /**
46
47
  * The equality comparison (`ir::CmpOp::Eq`) — a bound variable against a
47
- * variable (var-to-var unification, domain-equal by the environment
48
- * check), a param (typed by the variable), an ∈-set param (`Eq`-only, the
49
- * IR's set rule), or a bare literal of the variable's own value type.
50
- * Prefer direct placement in `match` where punning applies.
48
+ * variable (var-to-var unification, class-equal by the join judgment), a
49
+ * param (typed by the variable), an ∈-set param (`Eq`-only), or a bare
50
+ * literal of the variable's own value type. Prefer direct placement in
51
+ * `match` where punning applies.
51
52
  */
52
53
  function eq(left, right) {
53
54
  return comparison("eq", left, right, undefined);
@@ -81,12 +82,8 @@ function ge(left, right) {
81
82
  * Point membership as a predicate (`ir::CmpOp::PointIn`) — THE one
82
83
  * spelling: `pointIn(t, w)` holds iff `w.start ≤ t < w.end`. The IR
83
84
  * orders the operands interval-left, point-right; the value stores them
84
- * that way whatever the surface argument order (a literal `span(...)`
85
- * interval operand is legal and tags by the point sibling's element
86
- * domain — the bug-hunt fix, now also a type-level guarantee).
87
- * Interval ⊇ interval is NOT this operator; that predicate is
88
- * `allen(a, ALLEN.covers, b)` — the name `covers` belongs to the Allen
89
- * roster alone (the canonical-utterance law: one meaning, one spelling).
85
+ * that way whatever the surface argument order. Interval interval is NOT
86
+ * this operator; that predicate is `allen(a, ALLEN.covers, b)`.
90
87
  */
91
88
  function pointIn(point, interval) {
92
89
  assertTermSide("pointIn", point, interval);
@@ -95,16 +92,13 @@ function pointIn(point, interval) {
95
92
  /**
96
93
  * The 13-bit mask range: bits above the low 13 are unrepresentable in the
97
94
  * engine's `AllenMask` (`bumbledb/crates/bumbledb/src/allen.rs`:
98
- * `AllenMask::new` refuses them) — the check here is the same boundary,
99
- * moved to construction where the message can name the constants.
95
+ * `AllenMask::new` refuses them).
100
96
  */
101
97
  const ALLEN_ALL_BITS = (1 << 13) - 1;
102
98
  /**
103
99
  * The Allen coordinate system's named constants — the 13 basics in the
104
- * engine's palindromic bit order (bit i = basic i:
105
- * `bumbledb/crates/bumbledb/src/allen.rs`, a specified representation)
106
- * plus the workload composites, values identical to the engine's. Compose
107
- * with `|`: `ALLEN.before | ALLEN.meets`.
100
+ * engine's palindromic bit order plus the workload composites, values
101
+ * identical to the engine's. Compose with `|`: `ALLEN.before | ALLEN.meets`.
108
102
  */
109
103
  const ALLEN = Object.freeze({
110
104
  before: 1 << 0,
@@ -133,9 +127,7 @@ const ALLEN = Object.freeze({
133
127
  * THE interval-pair comparison (`ir::CmpOp::Allen`): two interval terms of
134
128
  * one element type, satisfied iff the pair's classification is in the
135
129
  * 13-bit mask — a literal built from the `ALLEN` constants, or a mask
136
- * parameter (`r.maskParam`). Vacuous masks (empty/full) are the engine's
137
- * two distinct typed rejections; nothing is pre-judged here beyond the
138
- * representable bit range.
130
+ * parameter (`r.maskParam`).
139
131
  */
140
132
  function allen(left, mask, right) {
141
133
  assertTermSide("allen", left, right);
@@ -156,25 +148,24 @@ function and(...children) {
156
148
  /**
157
149
  * Disjunction node of the input condition grammar (`ConditionTree::Or`) —
158
150
  * the one place the surface admits a nested OR; validation distributes it
159
- * to DNF rules engine-side (OR is data or it is nothing). `Or([])` keeps
160
- * its algebraic reading (false: the rule denotes nothing).
151
+ * to DNF rules engine-side. `Or([])` keeps its algebraic reading (false).
161
152
  */
162
153
  function or(...children) {
163
154
  return Object.freeze({ cond: "tree", op: "or", children: Object.freeze(children) });
164
155
  }
156
+ function not(relation, bindings) {
157
+ if (isRecTarget(relation)) {
158
+ return Object.freeze({ cond: "notIdb", target: relation, bindings });
159
+ }
160
+ return Object.freeze({ cond: "not", relation, bindings });
161
+ }
165
162
  /**
166
- * Negation — anti-join over sets: `not(Rel, { field: r.var("x"), ... })`
167
- * rejects every binding some matching fact extends. A negated atom binds
168
- * nothing, only rejects: every variable it names must be positively bound
169
- * in the rule, which `.where`'s environment check makes a COMPILE error
170
- * (the engine's safety refusal stands behind it). A CLOSED owner is legal
171
- * here too — the engine folds a resolvable negated closed atom to the
172
- * COMPLEMENT of its member set (domain-witness guarded), and the SDK's
173
- * negation rules apply to it unchanged.
163
+ * THE negation-target discriminant: a rec's runtime data carries its rules,
164
+ * a relation's its fields (and a closed relation's its handle roster) — the
165
+ * shapes are disjoint by construction, so the dispatch is total.
174
166
  */
175
- function not(relation, bindings) {
176
- const value = { cond: "not", relation, bindings };
177
- return Object.freeze(value);
167
+ function isRecTarget(value) {
168
+ return "rules" in value.data;
178
169
  }
179
170
  export { ALLEN, ALLEN_ALL_BITS, allen, and, comparison, eq, ge, gt, le, lt, ne, not, or, pointIn };
180
171
  //# sourceMappingURL=atom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"atom.js","sourceRoot":"","sources":["../../src/query/atom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atom.js","sourceRoot":"","sources":["../../src/query/atom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Find entries and aggregates, REFERENCE-IDENTITY edition — the head
3
+ * vocabulary, mirroring the IR's aggregate roster exactly
4
+ * (`bumbledb/crates/bumbledb/src/ir.rs` `AggOp`/`FindTerm`;
5
+ * `docs/architecture/20-query-ir.md` § aggregation): `count` (nullary),
6
+ * `countDistinct`, `sum`/`min`/`max` (over an orderable variable or the
7
+ * measure), `argMax`/`argMin` (arg-restriction: carried value + orderable
8
+ * key), and `pack` (the coalescing fold — RELATION-SHAPED, the result
9
+ * position interval-typed). Aggregates fold VARIABLES by reference —
10
+ * `r.sum(w)` — and are typed by the variable's own descriptor.
11
+ *
12
+ * `select(strings)` is DEAD: the head is a `find` RECORD, whose KEYS name
13
+ * the answer columns (`find({ total: r.count(), owner: h })`). The keys are
14
+ * unique object keys, so a duplicate answer column is unrepresentable and a
15
+ * rename is a real typed key. Grouping is implicit: the non-aggregate
16
+ * entries are the group key; over empty input an all-aggregate find yields
17
+ * the EMPTY SET, never a zero row. The creation quarantine is
18
+ * representational: a head position is a variable, the measure, or an
19
+ * aggregate — no minting or arithmetic term exists to spell (permanent law).
20
+ */
21
+ import type { Infer } from "#fields.ts";
22
+ import type { SchemaClasses } from "#law.ts";
23
+ import type { IntervalVarOk, OrderVarOk } from "#query/atom.ts";
24
+ import type { AnyVar, Duration, MintSlotOf } from "#query/scope.ts";
25
+ /** One aggregate operator name of the find vocabulary. */
26
+ type AggOpName = "count" | "countDistinct" | "sum" | "min" | "max" | "argMax" | "argMin" | "pack";
27
+ /**
28
+ * One aggregate find VALUE: the op, the variable (or measure) it folds BY
29
+ * REFERENCE, and — for the Arg forms — the orderable key variable. The
30
+ * variable's own descriptor types the result.
31
+ */
32
+ interface Agg<Op extends AggOpName, Over extends AnyVar | Duration | undefined, Key extends AnyVar | undefined = undefined> {
33
+ readonly agg: Op;
34
+ readonly over: Over;
35
+ readonly key: Key;
36
+ }
37
+ /** Any aggregate find value. */
38
+ type AnyAgg = Agg<AggOpName, AnyVar | Duration | undefined, AnyVar | undefined>;
39
+ /** One find entry: a projected variable, the measure, or an aggregate. */
40
+ type FindEntry = AnyVar | Duration | AnyAgg;
41
+ /** The `find` record: column name → find entry. Keys ARE the answer columns. */
42
+ type FindShape = Readonly<Record<string, FindEntry>>;
43
+ /** Nullary count: |the group's set of distinct full bindings|, `bigint`. */
44
+ declare function count(): Agg<"count", undefined>;
45
+ /** |the distinct values of the variable across the group|, `bigint`; legal over every type. */
46
+ declare function countDistinct<const V extends AnyVar>(over: V): Agg<"countDistinct", V>;
47
+ /**
48
+ * Exact checked sum over an orderable (u64/i64) variable — wide
49
+ * accumulator, one finalize range check; overflow is the engine's typed
50
+ * runtime error — or over the measure (`r.sum(r.duration(w))`).
51
+ */
52
+ declare function sum<const O extends AnyVar | Duration>(over: O): Agg<"sum", O>;
53
+ /** Minimum over an orderable variable or the measure (orderable types only). */
54
+ declare function min<const O extends AnyVar | Duration>(over: O): Agg<"min", O>;
55
+ /** Maximum over an orderable variable or the measure (orderable types only). */
56
+ declare function max<const O extends AnyVar | Duration>(over: O): Agg<"max", O>;
57
+ /**
58
+ * Arg-restriction toward the maximum of `key` (`ir::AggOp::ArgMax`): the
59
+ * group's binding set is restricted to the bindings attaining the extreme
60
+ * of the orderable key, and `value` is the carried payload — a tie yields
61
+ * every attaining row. All Arg entries of one query share one key and one
62
+ * direction; Arg and fold aggregates never mix (both the engine's rules).
63
+ */
64
+ declare function argMax<const V extends AnyVar, const K extends AnyVar>(value: V, key: K): Agg<"argMax", V, K>;
65
+ /** Arg-restriction toward the minimum of `key`; rules as {@link argMax}. */
66
+ declare function argMin<const V extends AnyVar, const K extends AnyVar>(value: V, key: K): Agg<"argMin", V, K>;
67
+ /**
68
+ * The coalescing fold (Snodgrass coalesce, `ir::AggOp::Pack`): per group,
69
+ * the maximal disjoint half-open segments of the union of the group's
70
+ * interval point sets — RELATION-SHAPED, one answer row per (group, maximal
71
+ * segment), the result position carrying one interval of the input's element
72
+ * type. At most one `pack` per find, never beside a fold or an Arg entry.
73
+ */
74
+ declare function pack<const V extends AnyVar>(over: V): Agg<"pack", V>;
75
+ /** A fold input's judgment: an orderable variable, or the measure of an interval variable. */
76
+ type FoldOverOk<O> = O extends AnyVar ? OrderVarOk<O> : O extends Duration<infer V extends AnyVar> ? IntervalVarOk<V> : false;
77
+ /**
78
+ * One find entry's judgment (off the entry's own descriptor — no env, no
79
+ * class map needed): a projected variable is ok, the measure and `pack`
80
+ * demand interval-typed variables, folds and Arg keys demand orderable ones.
81
+ */
82
+ type FindEntryOk<E> = E extends AnyVar ? true : E extends Duration<infer V extends AnyVar> ? IntervalVarOk<V> : E extends Agg<"count", undefined> ? true : E extends Agg<"countDistinct", AnyVar> ? true : E extends Agg<"sum" | "min" | "max", infer O> ? FoldOverOk<O> : E extends Agg<"argMax" | "argMin", AnyVar, infer K extends AnyVar> ? OrderVarOk<K> extends true ? true : false : E extends Agg<"pack", infer V extends AnyVar> ? IntervalVarOk<V> : false;
83
+ /** The validated find record (intersect with the inferred entries — errors land on the offending key). */
84
+ type CheckFind<F extends FindShape> = {
85
+ readonly [K in keyof F]: FindEntryOk<F[K]> extends true ? F[K] : never;
86
+ };
87
+ /**
88
+ * The validated find record of a RECURSIVE rule: every entry must be a plain
89
+ * variable (aggregates and the measure are unwritable in a recursive head —
90
+ * the strata quarantine).
91
+ */
92
+ type CheckRecFind<F extends FindShape> = {
93
+ readonly [K in keyof F]: F[K] extends AnyVar ? F[K] : never;
94
+ };
95
+ /**
96
+ * One find entry's answer-column value type: a variable carries its field's
97
+ * type, the measure/count/countDistinct are `bigint`, folds carry their
98
+ * input's type (a measure fold is `bigint`), the Arg forms carry the
99
+ * payload's type, `pack` its interval type.
100
+ */
101
+ type FindValue<E> = E extends AnyVar ? Infer<E["field"]> : E extends Duration<AnyVar> ? bigint : E extends Agg<"count", undefined> ? bigint : E extends Agg<"countDistinct", AnyVar> ? bigint : E extends Agg<"sum" | "min" | "max", infer O> ? O extends AnyVar ? Infer<O["field"]> : bigint : E extends Agg<"argMax" | "argMin", infer V extends AnyVar, AnyVar> ? Infer<V["field"]> : E extends Agg<"pack", infer V extends AnyVar> ? Infer<V["field"]> : never;
102
+ /** The inferred answer-row object type of a find record — the keys ARE the columns. */
103
+ type RowOfFind<F extends FindShape> = {
104
+ readonly [K in keyof F]: FindValue<F[K]>;
105
+ };
106
+ /**
107
+ * The head signature of a recursive rule's find record as classed mint
108
+ * slots (descriptor + law-computed class), keyed by column name — the
109
+ * signature an `idb` join pairs against (`F` is variable-only there).
110
+ */
111
+ type HeadRecordOf<Classes extends SchemaClasses, F extends FindShape> = {
112
+ readonly [K in keyof F]: F[K] extends AnyVar ? MintSlotOf<Classes, F[K]> : never;
113
+ };
114
+ export type { Agg, AggOpName, AnyAgg, CheckFind, CheckRecFind, FindEntry, FindEntryOk, FindShape, FindValue, HeadRecordOf, RowOfFind };
115
+ export { argMax, argMin, count, countDistinct, max, min, pack, sum };
116
+ //# sourceMappingURL=find.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../src/query/find.ts"],"names":[],"mappings":"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"}
@@ -1,37 +1,39 @@
1
1
  /**
2
- * Select entries and aggregates, STRUCTURAL edition — the head vocabulary,
3
- * mirroring the IR's aggregate roster exactly
2
+ * Find entries and aggregates, REFERENCE-IDENTITY edition — the head
3
+ * vocabulary, mirroring the IR's aggregate roster exactly
4
4
  * (`bumbledb/crates/bumbledb/src/ir.rs` `AggOp`/`FindTerm`;
5
5
  * `docs/architecture/20-query-ir.md` § aggregation): `count` (nullary),
6
6
  * `countDistinct`, `sum`/`min`/`max` (over an orderable variable or the
7
7
  * measure), `argMax`/`argMin` (arg-restriction: carried value + orderable
8
- * key; a tie yields every attaining row), and `pack` (the coalescing fold —
9
- * RELATION-SHAPED: one answer row per (group, maximal segment), the result
10
- * position interval-typed). Aggregates name their variables — `r.sum("m")`
11
- * — and are typed by the rule environment at `.select`. Grouping is
12
- * implicit: the non-aggregate select entries are the group key; over empty
13
- * input an all-aggregate select yields the EMPTY SET, never a zero row.
14
- * The creation quarantine is representational: a head position is a var
15
- * name, the measure, or an aggregate no minting or arithmetic term
16
- * exists to spell (permanent law).
8
+ * key), and `pack` (the coalescing fold — RELATION-SHAPED, the result
9
+ * position interval-typed). Aggregates fold VARIABLES by reference
10
+ * `r.sum(w)` — and are typed by the variable's own descriptor.
11
+ *
12
+ * `select(strings)` is DEAD: the head is a `find` RECORD, whose KEYS name
13
+ * the answer columns (`find({ total: r.count(), owner: h })`). The keys are
14
+ * unique object keys, so a duplicate answer column is unrepresentable and a
15
+ * rename is a real typed key. Grouping is implicit: the non-aggregate
16
+ * entries are the group key; over empty input an all-aggregate find yields
17
+ * the EMPTY SET, never a zero row. The creation quarantine is
18
+ * representational: a head position is a variable, the measure, or an
19
+ * aggregate — no minting or arithmetic term exists to spell (permanent law).
17
20
  */
18
21
  /** Builds one aggregate value. */
19
22
  function aggregate(op, over, key) {
20
23
  return Object.freeze({ agg: op, over, key });
21
24
  }
22
- /** Nullary count: |the group's set of distinct full bindings|, `bigint`; the answer column is named `count`. */
25
+ /** Nullary count: |the group's set of distinct full bindings|, `bigint`. */
23
26
  function count() {
24
27
  return aggregate("count", undefined, undefined);
25
28
  }
26
- /** |the distinct values of the named variable across the group|, `bigint`; legal over every type. */
29
+ /** |the distinct values of the variable across the group|, `bigint`; legal over every type. */
27
30
  function countDistinct(over) {
28
31
  return aggregate("countDistinct", over, undefined);
29
32
  }
30
33
  /**
31
34
  * Exact checked sum over an orderable (u64/i64) variable — wide
32
35
  * accumulator, one finalize range check; overflow is the engine's typed
33
- * runtime error, never a wrap — or over the measure
34
- * (`r.sum(r.duration("w"))`).
36
+ * runtime error — or over the measure (`r.sum(r.duration(w))`).
35
37
  */
36
38
  function sum(over) {
37
39
  return aggregate("sum", over, undefined);
@@ -49,8 +51,7 @@ function max(over) {
49
51
  * group's binding set is restricted to the bindings attaining the extreme
50
52
  * of the orderable key, and `value` is the carried payload — a tie yields
51
53
  * every attaining row. All Arg entries of one query share one key and one
52
- * direction; Arg and fold aggregates never mix (both the engine's typed
53
- * rules).
54
+ * direction; Arg and fold aggregates never mix (both the engine's rules).
54
55
  */
55
56
  function argMax(value, key) {
56
57
  return aggregate("argMax", value, key);
@@ -62,13 +63,12 @@ function argMin(value, key) {
62
63
  /**
63
64
  * The coalescing fold (Snodgrass coalesce, `ir::AggOp::Pack`): per group,
64
65
  * the maximal disjoint half-open segments of the union of the group's
65
- * interval point sets — RELATION-SHAPED, one answer row per (group,
66
- * maximal segment), the result position carrying one interval of the
67
- * input's element type. At most one `pack` per select, never beside a
68
- * fold or an Arg entry (the engine's typed rules).
66
+ * interval point sets — RELATION-SHAPED, one answer row per (group, maximal
67
+ * segment), the result position carrying one interval of the input's element
68
+ * type. At most one `pack` per find, never beside a fold or an Arg entry.
69
69
  */
70
70
  function pack(over) {
71
71
  return aggregate("pack", over, undefined);
72
72
  }
73
73
  export { argMax, argMin, count, countDistinct, max, min, pack, sum };
74
- //# sourceMappingURL=select.js.map
74
+ //# sourceMappingURL=find.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find.js","sourceRoot":"","sources":["../../src/query/find.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAkCH,kCAAkC;AAClC,SAAS,SAAS,CACjB,EAAM,EACN,IAAU,EACV,GAAQ;IAER,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;AAC7C,CAAC;AAED,4EAA4E;AAC5E,SAAS,KAAK;IACb,OAAO,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;AAChD,CAAC;AAED,+FAA+F;AAC/F,SAAS,aAAa,CAAyB,IAAO;IACrD,OAAO,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;AACnD,CAAC;AAED;;;;GAIG;AACH,SAAS,GAAG,CAAoC,IAAO;IACtD,OAAO,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;AACzC,CAAC;AAED,gFAAgF;AAChF,SAAS,GAAG,CAAoC,IAAO;IACtD,OAAO,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;AACzC,CAAC;AAED,gFAAgF;AAChF,SAAS,GAAG,CAAoC,IAAO;IACtD,OAAO,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;AACzC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,MAAM,CAAiD,KAAQ,EAAE,GAAM;IAC/E,OAAO,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAED,4EAA4E;AAC5E,SAAS,MAAM,CAAiD,KAAQ,EAAE,GAAM;IAC/E,OAAO,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;AACvC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,IAAI,CAAyB,IAAO;IAC5C,OAAO,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;AAC1C,CAAC;AA+FD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA"}