@elaraai/east 1.0.98 → 1.0.99

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 (112) hide show
  1. package/README.md +0 -1
  2. package/dist/src/builtins.d.ts +1 -1
  3. package/dist/src/builtins.d.ts.map +1 -1
  4. package/dist/src/builtins.js +14 -0
  5. package/dist/src/builtins.js.map +1 -1
  6. package/dist/src/codegen/spellings.d.ts.map +1 -1
  7. package/dist/src/codegen/spellings.js +2 -0
  8. package/dist/src/codegen/spellings.js.map +1 -1
  9. package/dist/src/comparison.d.ts +6 -5
  10. package/dist/src/comparison.d.ts.map +1 -1
  11. package/dist/src/comparison.js +6 -5
  12. package/dist/src/comparison.js.map +1 -1
  13. package/dist/src/compile/builtins/array.d.ts +4 -0
  14. package/dist/src/compile/builtins/array.d.ts.map +1 -1
  15. package/dist/src/compile/builtins/array.js +15 -1
  16. package/dist/src/compile/builtins/array.js.map +1 -1
  17. package/dist/src/compile/builtins/dict.d.ts +4 -0
  18. package/dist/src/compile/builtins/dict.d.ts.map +1 -1
  19. package/dist/src/compile/builtins/dict.js +14 -1
  20. package/dist/src/compile/builtins/dict.js.map +1 -1
  21. package/dist/src/compile/builtins/tree.d.ts +13 -0
  22. package/dist/src/compile/builtins/tree.d.ts.map +1 -1
  23. package/dist/src/compile/builtins/tree.js +27 -1
  24. package/dist/src/compile/builtins/tree.js.map +1 -1
  25. package/dist/src/compile/builtins/vector.d.ts +2 -2
  26. package/dist/src/expr/array.d.ts +39 -0
  27. package/dist/src/expr/array.d.ts.map +1 -1
  28. package/dist/src/expr/array.js +47 -0
  29. package/dist/src/expr/array.js.map +1 -1
  30. package/dist/src/expr/dict.d.ts +44 -1
  31. package/dist/src/expr/dict.d.ts.map +1 -1
  32. package/dist/src/expr/dict.js +54 -2
  33. package/dist/src/expr/dict.js.map +1 -1
  34. package/dist/src/expr/index.d.ts +130 -0
  35. package/dist/src/expr/index.d.ts.map +1 -1
  36. package/dist/src/expr/index.js +133 -0
  37. package/dist/src/expr/index.js.map +1 -1
  38. package/dist/src/expr/named.d.ts +100 -0
  39. package/dist/src/expr/named.d.ts.map +1 -0
  40. package/dist/src/expr/named.js +182 -0
  41. package/dist/src/expr/named.js.map +1 -0
  42. package/dist/src/functions.d.ts +21 -0
  43. package/dist/src/functions.d.ts.map +1 -1
  44. package/dist/src/functions.js +22 -41
  45. package/dist/src/functions.js.map +1 -1
  46. package/dist/src/ir_locations.d.ts +24 -0
  47. package/dist/src/ir_locations.d.ts.map +1 -0
  48. package/dist/src/ir_locations.js +58 -0
  49. package/dist/src/ir_locations.js.map +1 -0
  50. package/dist/src/location.d.ts +10 -0
  51. package/dist/src/location.d.ts.map +1 -1
  52. package/dist/src/location.js +19 -1
  53. package/dist/src/location.js.map +1 -1
  54. package/dist/src/query/jq/catalog.js +1 -1
  55. package/dist/src/query/jq/catalog.js.map +1 -1
  56. package/dist/src/query/jq/translate-builtins.d.ts.map +1 -1
  57. package/dist/src/query/jq/translate-builtins.js +11 -2
  58. package/dist/src/query/jq/translate-builtins.js.map +1 -1
  59. package/dist/src/query/jq/translate.d.ts +12 -0
  60. package/dist/src/query/jq/translate.d.ts.map +1 -1
  61. package/dist/src/query/jq/translate.js +40 -0
  62. package/dist/src/query/jq/translate.js.map +1 -1
  63. package/dist/src/runner_exec.d.ts +4 -1
  64. package/dist/src/runner_exec.d.ts.map +1 -1
  65. package/dist/src/runner_exec.js +24 -12
  66. package/dist/src/runner_exec.js.map +1 -1
  67. package/dist/src/runner_merge.d.ts +18 -0
  68. package/dist/src/runner_merge.d.ts.map +1 -1
  69. package/dist/src/runner_merge.js +36 -2
  70. package/dist/src/runner_merge.js.map +1 -1
  71. package/dist/src/serialization/beast2/decoded-function.spec.js +7 -4
  72. package/dist/src/serialization/beast2/decoded-function.spec.js.map +1 -1
  73. package/dist/src/serialization/beast2/v4/container.d.ts.map +1 -1
  74. package/dist/src/serialization/beast2/v4/container.js +3 -4
  75. package/dist/src/serialization/beast2/v4/container.js.map +1 -1
  76. package/dist/src/serialization/beast2/v4/type-table.d.ts +42 -14
  77. package/dist/src/serialization/beast2/v4/type-table.d.ts.map +1 -1
  78. package/dist/src/serialization/beast2/v4/type-table.js +139 -53
  79. package/dist/src/serialization/beast2/v4/type-table.js.map +1 -1
  80. package/dist/src/serialization/beast2/v5/codec.d.ts +29 -2
  81. package/dist/src/serialization/beast2/v5/codec.d.ts.map +1 -1
  82. package/dist/src/serialization/beast2/v5/codec.js +153 -27
  83. package/dist/src/serialization/beast2/v5/codec.js.map +1 -1
  84. package/dist/src/serialization/beast2/v5/manifest.d.ts +3 -3
  85. package/dist/src/serialization/beast2/v5/manifest.js +3 -3
  86. package/dist/src/serialization/beast2/v5/runs.d.ts.map +1 -1
  87. package/dist/src/serialization/beast2/v5/runs.js +16 -4
  88. package/dist/src/serialization/beast2/v5/runs.js.map +1 -1
  89. package/dist/src/serialization/beast2/v5/source-maps.spec.d.ts +6 -0
  90. package/dist/src/serialization/beast2/v5/source-maps.spec.d.ts.map +1 -0
  91. package/dist/src/serialization/beast2/v5/source-maps.spec.js +81 -0
  92. package/dist/src/serialization/beast2/v5/source-maps.spec.js.map +1 -0
  93. package/dist/src/serialization/beast2/v5/type-section.js +1 -1
  94. package/dist/src/serialization/beast2/v5/type-section.js.map +1 -1
  95. package/dist/src/type_of_type.d.ts +12 -33
  96. package/dist/src/type_of_type.d.ts.map +1 -1
  97. package/dist/src/type_of_type.js +46 -174
  98. package/dist/src/type_of_type.js.map +1 -1
  99. package/dist/src/type_of_type.recursive_id.spec.d.ts +6 -0
  100. package/dist/src/type_of_type.recursive_id.spec.d.ts.map +1 -0
  101. package/dist/src/type_of_type.recursive_id.spec.js +86 -0
  102. package/dist/src/type_of_type.recursive_id.spec.js.map +1 -0
  103. package/dist/src/type_of_type.to_etv.spec.js +9 -9
  104. package/dist/src/type_of_type.to_etv.spec.js.map +1 -1
  105. package/dist/src/type_value_equal.d.ts +31 -0
  106. package/dist/src/type_value_equal.d.ts.map +1 -0
  107. package/dist/src/type_value_equal.js +170 -0
  108. package/dist/src/type_value_equal.js.map +1 -0
  109. package/dist/src/types.d.ts.map +1 -1
  110. package/dist/src/types.js +3 -1
  111. package/dist/src/types.js.map +1 -1
  112. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dict.js","sourceRoot":"","sources":["../../../src/expr/dict.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dict.js","sourceRoot":"","sources":["../../../src/expr/dict.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,8 @@ import { from, equal, notEqual, less, lessEqual, print, is, greaterEqual, greate
28
28
  import { toSource } from '../codegen/index.js';
29
29
  import { importFunction, exportFunctions, encodeFunctionManifest, decodeFunctionManifest, linkImports, platformDependencies } from '../functions.js';
30
30
  import { jq } from './query.js';
31
+ import { field, fields, inCase, patchesFor, struct, withField } from './named.js';
32
+ export { type Patches } from './named.js';
31
33
  export { BlockBuilder, type AsyncPlatformDefinition, type PlatformDefinition, type GenericPlatformDefinition, type AsyncGenericPlatformDefinition, type PlatformDeclaration, PLATFORM_DECLARATION, isPlatformDeclaration, equals, eq, notEquals, ne, lessThan, lt, lessThanOrEqual, lte, le, greaterThan, gt, greaterThanOrEqual, gte, ge, diff, applyPatch, composePatch, invertPatch } from './block.js';
32
34
  export type { ToExpr as ExprFactory } from './expr.js';
33
35
  /**
@@ -662,6 +664,134 @@ export declare const East: {
662
664
  * ```
663
665
  */
664
666
  invertPatch: typeof invertPatch;
667
+ /**
668
+ * Reads a struct's field by a name held as a value — what `value.name`
669
+ * reads where the name is written — for code building East programs over
670
+ * types it is handed. A recursive value is read through to its node.
671
+ *
672
+ * @param value - A struct, or a recursive value whose node is one
673
+ * @param name - The field
674
+ * @param type - The field's type, where the caller holds it: checked, and the expression typed by it
675
+ * @returns The field's expression
676
+ * @throws {Error} When the value is not a struct, has no field of the name, or the field is not of the type given —
677
+ * as the program is built
678
+ *
679
+ * @example
680
+ * ```ts
681
+ * const Row = StructType({ name: StringType, site: StringType });
682
+ * const readOf = (name: string) => East.function([Row], StringType, ($, row) => East.field(row, name, StringType));
683
+ * const compiled = East.compile(readOf("site"), []);
684
+ * compiled({ name: "Press 1", site: "North" }); // "North"
685
+ * ```
686
+ */
687
+ field: typeof field;
688
+ /**
689
+ * A struct's fields by names held as values: each field's expression, in
690
+ * the order given, or in the struct's own — to spread into a call, or into
691
+ * {@link East.struct}. The value is read once a field: give a variable.
692
+ *
693
+ * @param value - A struct, or a recursive value whose node is one
694
+ * @param names - The fields, in the order wanted; every field, in the struct's order, where none are given
695
+ * @returns The fields' expressions
696
+ * @throws {Error} When the value is not a struct, or has no field of a name given — as the program is built
697
+ *
698
+ * @example
699
+ * ```ts
700
+ * const Row = StructType({ name: StringType, site: StringType, status: StringType });
701
+ * const Place = StructType({ site: StringType, name: StringType });
702
+ * const placeOf = East.function([Row], Place, ($, row) => East.struct(Place, East.fields(row, ["site", "name"])));
703
+ * const compiled = East.compile(placeOf, []);
704
+ * compiled({ name: "Press 1", site: "North", status: "up" }); // { site: "North", name: "Press 1" }
705
+ * ```
706
+ */
707
+ fields: typeof fields;
708
+ /**
709
+ * Builds a struct of a type held as a value from its fields, by name or in
710
+ * the type's order — what a struct literal builds where its names are
711
+ * written. A recursive type's node is built, and wrapped in it.
712
+ *
713
+ * @param type - A struct type, or a recursive type whose node is one
714
+ * @param values - Each field's value or expression: by name, every field once; or in the type's order, one a field
715
+ * @returns The struct's expression
716
+ * @throws {Error} When the type is not a struct, a name is not one of its fields, a field has no value, or a value
717
+ * is not of its field's type — as the program is built
718
+ *
719
+ * @example
720
+ * ```ts
721
+ * const Pair = StructType({ low: IntegerType, high: IntegerType });
722
+ * const ordered = East.function([IntegerType, IntegerType], Pair, ($, a, b) =>
723
+ * East.struct(Pair, [East.min(a, b), East.max(a, b)]));
724
+ * const compiled = East.compile(ordered, []);
725
+ * compiled(7n, 3n); // { low: 3n, high: 7n }
726
+ * ```
727
+ */
728
+ struct: typeof struct;
729
+ /**
730
+ * A struct with one field replaced, by a name held as a value: the same
731
+ * type, every other field as it is. A recursive value's node is rebuilt,
732
+ * and wrapped again. The value is read once a field: give a variable.
733
+ *
734
+ * @param value - A struct, or a recursive value whose node is one
735
+ * @param name - The field replaced
736
+ * @param replacement - Its new value or expression
737
+ * @returns The struct with the field replaced
738
+ * @throws {Error} When the value is not a struct, has no field of the name, or the replacement is not of its type —
739
+ * as the program is built
740
+ *
741
+ * @example
742
+ * ```ts
743
+ * const Row = StructType({ name: StringType, status: StringType });
744
+ * const stopped = East.function([Row], Row, ($, row) => East.withField(row, "status", "down"));
745
+ * const compiled = East.compile(stopped, []);
746
+ * compiled({ name: "Press 1", status: "up" }); // { name: "Press 1", status: "down" }
747
+ * ```
748
+ */
749
+ withField: typeof withField;
750
+ /**
751
+ * A variant of a type held as a value, holding a value in a case by a name
752
+ * held as a value — what `variant(name, value)` builds where the case is
753
+ * written. A recursive type's node is built, and wrapped in it.
754
+ *
755
+ * @param type - A variant type, or a recursive type whose node is one
756
+ * @param name - The case
757
+ * @param value - Its value or expression
758
+ * @returns The variant's expression
759
+ * @throws {Error} When the type is not a variant, has no case of the name, or the value is not of the case's type —
760
+ * as the program is built
761
+ *
762
+ * @example
763
+ * ```ts
764
+ * const Reading = VariantType({ load: FloatType, output: FloatType });
765
+ * const readingOf = (place: string) => East.function([FloatType], Reading, ($, x) => East.inCase(Reading, place, x));
766
+ * const compiled = East.compile(readingOf("output"), []);
767
+ * compiled(0.82); // variant("output", 0.82)
768
+ * ```
769
+ */
770
+ inCase: typeof inCase;
771
+ /**
772
+ * The patch functions of a type held as a value: diff, apply, compose and
773
+ * invert, each an East function of the type, bound and called as any other
774
+ * — what {@link East.diff}, {@link East.applyPatch},
775
+ * {@link East.composePatch} and {@link East.invertPatch} build where the
776
+ * type is written.
777
+ *
778
+ * @param type - The type patched
779
+ * @returns Its patch type, and its patch functions
780
+ *
781
+ * @example
782
+ * ```ts
783
+ * const Row = StructType({ name: StringType, status: StringType });
784
+ * const { diff, apply } = East.patchesFor(Row);
785
+ * const roundTrip = East.function([Row, Row], Row, ($, before, after) => {
786
+ * const diffFn = $.const(diff);
787
+ * const applyFn = $.const(apply);
788
+ * return applyFn(before, diffFn(before, after));
789
+ * });
790
+ * const compiled = East.compile(roundTrip, []);
791
+ * compiled({ name: "Press 1", status: "up" }, { name: "Press 1", status: "down" }); // { name: "Press 1", status: "down" }
792
+ * ```
793
+ */
794
+ patchesFor: typeof patchesFor;
665
795
  /**
666
796
  * A jq query over East values, as East code: parsed, checked against the
667
797
  * inputs' types and translated to ordinary East IR when the program is
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/expr/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/expr/index.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,8 @@ import { from, equal, notEqual, less, lessEqual, print, is, greaterEqual, greate
31
31
  import { toSource } from '../codegen/index.js';
32
32
  import { importFunction, exportFunctions, encodeFunctionManifest, decodeFunctionManifest, linkImports, platformDependencies } from '../functions.js';
33
33
  import { jq } from './query.js';
34
+ import { field, fields, inCase, patchesFor, struct, withField } from './named.js';
35
+ export {} from './named.js';
34
36
  export { BlockBuilder, PLATFORM_DECLARATION, isPlatformDeclaration, equals, eq, notEquals, ne, lessThan, lt, lessThanOrEqual, lte, le, greaterThan, gt, greaterThanOrEqual, gte, ge, diff, applyPatch, composePatch, invertPatch } from './block.js';
35
37
  // Import standard libraries
36
38
  import IntegerLib from './libs/integer.js';
@@ -704,6 +706,137 @@ export const East = {
704
706
  */
705
707
  invertPatch,
706
708
  // ============================================================================
709
+ // Names and types held as values
710
+ // ============================================================================
711
+ /**
712
+ * Reads a struct's field by a name held as a value — what `value.name`
713
+ * reads where the name is written — for code building East programs over
714
+ * types it is handed. A recursive value is read through to its node.
715
+ *
716
+ * @param value - A struct, or a recursive value whose node is one
717
+ * @param name - The field
718
+ * @param type - The field's type, where the caller holds it: checked, and the expression typed by it
719
+ * @returns The field's expression
720
+ * @throws {Error} When the value is not a struct, has no field of the name, or the field is not of the type given —
721
+ * as the program is built
722
+ *
723
+ * @example
724
+ * ```ts
725
+ * const Row = StructType({ name: StringType, site: StringType });
726
+ * const readOf = (name: string) => East.function([Row], StringType, ($, row) => East.field(row, name, StringType));
727
+ * const compiled = East.compile(readOf("site"), []);
728
+ * compiled({ name: "Press 1", site: "North" }); // "North"
729
+ * ```
730
+ */
731
+ field,
732
+ /**
733
+ * A struct's fields by names held as values: each field's expression, in
734
+ * the order given, or in the struct's own — to spread into a call, or into
735
+ * {@link East.struct}. The value is read once a field: give a variable.
736
+ *
737
+ * @param value - A struct, or a recursive value whose node is one
738
+ * @param names - The fields, in the order wanted; every field, in the struct's order, where none are given
739
+ * @returns The fields' expressions
740
+ * @throws {Error} When the value is not a struct, or has no field of a name given — as the program is built
741
+ *
742
+ * @example
743
+ * ```ts
744
+ * const Row = StructType({ name: StringType, site: StringType, status: StringType });
745
+ * const Place = StructType({ site: StringType, name: StringType });
746
+ * const placeOf = East.function([Row], Place, ($, row) => East.struct(Place, East.fields(row, ["site", "name"])));
747
+ * const compiled = East.compile(placeOf, []);
748
+ * compiled({ name: "Press 1", site: "North", status: "up" }); // { site: "North", name: "Press 1" }
749
+ * ```
750
+ */
751
+ fields,
752
+ /**
753
+ * Builds a struct of a type held as a value from its fields, by name or in
754
+ * the type's order — what a struct literal builds where its names are
755
+ * written. A recursive type's node is built, and wrapped in it.
756
+ *
757
+ * @param type - A struct type, or a recursive type whose node is one
758
+ * @param values - Each field's value or expression: by name, every field once; or in the type's order, one a field
759
+ * @returns The struct's expression
760
+ * @throws {Error} When the type is not a struct, a name is not one of its fields, a field has no value, or a value
761
+ * is not of its field's type — as the program is built
762
+ *
763
+ * @example
764
+ * ```ts
765
+ * const Pair = StructType({ low: IntegerType, high: IntegerType });
766
+ * const ordered = East.function([IntegerType, IntegerType], Pair, ($, a, b) =>
767
+ * East.struct(Pair, [East.min(a, b), East.max(a, b)]));
768
+ * const compiled = East.compile(ordered, []);
769
+ * compiled(7n, 3n); // { low: 3n, high: 7n }
770
+ * ```
771
+ */
772
+ struct,
773
+ /**
774
+ * A struct with one field replaced, by a name held as a value: the same
775
+ * type, every other field as it is. A recursive value's node is rebuilt,
776
+ * and wrapped again. The value is read once a field: give a variable.
777
+ *
778
+ * @param value - A struct, or a recursive value whose node is one
779
+ * @param name - The field replaced
780
+ * @param replacement - Its new value or expression
781
+ * @returns The struct with the field replaced
782
+ * @throws {Error} When the value is not a struct, has no field of the name, or the replacement is not of its type —
783
+ * as the program is built
784
+ *
785
+ * @example
786
+ * ```ts
787
+ * const Row = StructType({ name: StringType, status: StringType });
788
+ * const stopped = East.function([Row], Row, ($, row) => East.withField(row, "status", "down"));
789
+ * const compiled = East.compile(stopped, []);
790
+ * compiled({ name: "Press 1", status: "up" }); // { name: "Press 1", status: "down" }
791
+ * ```
792
+ */
793
+ withField,
794
+ /**
795
+ * A variant of a type held as a value, holding a value in a case by a name
796
+ * held as a value — what `variant(name, value)` builds where the case is
797
+ * written. A recursive type's node is built, and wrapped in it.
798
+ *
799
+ * @param type - A variant type, or a recursive type whose node is one
800
+ * @param name - The case
801
+ * @param value - Its value or expression
802
+ * @returns The variant's expression
803
+ * @throws {Error} When the type is not a variant, has no case of the name, or the value is not of the case's type —
804
+ * as the program is built
805
+ *
806
+ * @example
807
+ * ```ts
808
+ * const Reading = VariantType({ load: FloatType, output: FloatType });
809
+ * const readingOf = (place: string) => East.function([FloatType], Reading, ($, x) => East.inCase(Reading, place, x));
810
+ * const compiled = East.compile(readingOf("output"), []);
811
+ * compiled(0.82); // variant("output", 0.82)
812
+ * ```
813
+ */
814
+ inCase,
815
+ /**
816
+ * The patch functions of a type held as a value: diff, apply, compose and
817
+ * invert, each an East function of the type, bound and called as any other
818
+ * — what {@link East.diff}, {@link East.applyPatch},
819
+ * {@link East.composePatch} and {@link East.invertPatch} build where the
820
+ * type is written.
821
+ *
822
+ * @param type - The type patched
823
+ * @returns Its patch type, and its patch functions
824
+ *
825
+ * @example
826
+ * ```ts
827
+ * const Row = StructType({ name: StringType, status: StringType });
828
+ * const { diff, apply } = East.patchesFor(Row);
829
+ * const roundTrip = East.function([Row, Row], Row, ($, before, after) => {
830
+ * const diffFn = $.const(diff);
831
+ * const applyFn = $.const(apply);
832
+ * return applyFn(before, diffFn(before, after));
833
+ * });
834
+ * const compiled = East.compile(roundTrip, []);
835
+ * compiled({ name: "Press 1", status: "up" }, { name: "Press 1", status: "down" }); // { name: "Press 1", status: "down" }
836
+ * ```
837
+ */
838
+ patchesFor,
839
+ // ============================================================================
707
840
  // Queries
708
841
  // ============================================================================
709
842
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/expr/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/expr/index.ts"],"names":[],"mappings":"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"}