tpmkms_4wp 8.9.1-beta.1 → 8.9.1-beta.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/common/animals.instance.json +36 -0
- package/common/colors.instance.json +36 -0
- package/common/crew.instance.json +104 -0
- package/common/dialogues.js +2 -1
- package/common/dimension.instance.json +36 -0
- package/common/edible.instance.json +72 -0
- package/common/emotions.instance.json +60 -0
- package/common/fastfood.instance.json +732 -747
- package/common/gdefaults.js +22 -14
- package/common/helpers.js +16 -0
- package/common/ordering.instance.json +47 -63
- package/common/pipboy.instance.json +108 -0
- package/common/properties.instance.json +44 -0
- package/common/reports.instance.json +1 -1
- package/common/wp.instance.json +7714 -992
- package/common/wp.js +42 -11
- package/common/wp.test.json +31165 -3067
- package/package.json +2 -2
package/common/gdefaults.js
CHANGED
@@ -3,7 +3,7 @@ const { defaultContextCheck } = require('./helpers')
|
|
3
3
|
const { knowledgeModule, where } = require('./runtime').theprogrammablemind
|
4
4
|
const tokenize = require('./tokenize.js')
|
5
5
|
const gdefaults_tests = require('./gdefaults.test.json')
|
6
|
-
const { isMany } = require('./helpers.js')
|
6
|
+
const { getValue, isMany } = require('./helpers.js')
|
7
7
|
|
8
8
|
let config = {
|
9
9
|
name: 'gdefaults',
|
@@ -33,20 +33,22 @@ let config = {
|
|
33
33
|
where: where(),
|
34
34
|
match: ({context}) => context.generate,
|
35
35
|
apply: async ({context, gs}) => {
|
36
|
-
const
|
37
|
-
const
|
38
|
-
|
39
|
-
|
36
|
+
const contexts = []
|
37
|
+
for (const key of context.generate) {
|
38
|
+
const value = getValue(key, context)
|
39
|
+
if (!(value !== undefined || key == 'this')) {
|
40
|
+
continue
|
41
|
+
}
|
42
|
+
if (value.skipDefault) {
|
43
|
+
continue
|
40
44
|
}
|
41
|
-
return true
|
42
|
-
})
|
43
|
-
return gs(filtered.map((key) => {
|
44
45
|
if (key == 'this') {
|
45
|
-
|
46
|
+
contexts.push({...context, generate: null})
|
46
47
|
} else {
|
47
|
-
|
48
|
+
contexts.push(value)
|
48
49
|
}
|
49
|
-
}
|
50
|
+
}
|
51
|
+
return gs(contexts)
|
50
52
|
}
|
51
53
|
},
|
52
54
|
|
@@ -61,7 +63,7 @@ let config = {
|
|
61
63
|
//({context}) => context.paraphrase && context.modifiers,
|
62
64
|
// match: ({context}) => context.paraphrase && (context.modifiers || context.postModifiers),
|
63
65
|
match: ({context}) => (context.modifiers || context.postModifiers),
|
64
|
-
apply: async ({context, g, callId}) => {
|
66
|
+
apply: async ({context, g, gs, callId}) => {
|
65
67
|
const text = []
|
66
68
|
for (modifier of (context.modifiers || [])) {
|
67
69
|
if (Array.isArray(context[modifier])) {
|
@@ -86,9 +88,15 @@ let config = {
|
|
86
88
|
}
|
87
89
|
for ([index, modifier] of (context.postModifiers || []).entries()) {
|
88
90
|
if (index == context.postModifiers.length - 1) {
|
89
|
-
|
91
|
+
const fn = Array.isArray(context[modifier]) ? gs: g;
|
92
|
+
if (Array.isArray(context[modifier])) {
|
93
|
+
text.push(await gs(context[modifier].map((c) => { return {...c , number} })))
|
94
|
+
} else {
|
95
|
+
text.push(await g({...context[modifier], number}))
|
96
|
+
}
|
90
97
|
} else {
|
91
|
-
|
98
|
+
const fn = Array.isArray(context[modifier]) ? gs: g;
|
99
|
+
text.push(await fn(context[modifier]))
|
92
100
|
}
|
93
101
|
}
|
94
102
|
return text.join(' ')
|
package/common/helpers.js
CHANGED
@@ -191,7 +191,23 @@ const isA = (hierarchy) => (child, parent, { strict=false } = {}) => {
|
|
191
191
|
}
|
192
192
|
}
|
193
193
|
|
194
|
+
const getValue = (propertyPath, object) => {
|
195
|
+
if (!propertyPath) {
|
196
|
+
return
|
197
|
+
}
|
198
|
+
const path = propertyPath.split('.')
|
199
|
+
let value = object
|
200
|
+
for (const name of path) {
|
201
|
+
if (!value) {
|
202
|
+
break
|
203
|
+
}
|
204
|
+
value = value[name]
|
205
|
+
}
|
206
|
+
return value
|
207
|
+
}
|
208
|
+
|
194
209
|
module.exports = {
|
210
|
+
getValue,
|
195
211
|
defaultContextCheck,
|
196
212
|
defaultContextCheckProperties,
|
197
213
|
toEValue,
|
@@ -740,6 +740,32 @@
|
|
740
740
|
0
|
741
741
|
]
|
742
742
|
],
|
743
|
+
[
|
744
|
+
[
|
745
|
+
"between",
|
746
|
+
0
|
747
|
+
],
|
748
|
+
[
|
749
|
+
"is",
|
750
|
+
0
|
751
|
+
],
|
752
|
+
[
|
753
|
+
"list",
|
754
|
+
0
|
755
|
+
],
|
756
|
+
[
|
757
|
+
"unknown",
|
758
|
+
0
|
759
|
+
],
|
760
|
+
[
|
761
|
+
"unknown",
|
762
|
+
1
|
763
|
+
],
|
764
|
+
[
|
765
|
+
"xfx",
|
766
|
+
0
|
767
|
+
]
|
768
|
+
],
|
743
769
|
[
|
744
770
|
[
|
745
771
|
"between",
|
@@ -2040,40 +2066,6 @@
|
|
2040
2066
|
0
|
2041
2067
|
]
|
2042
2068
|
],
|
2043
|
-
[
|
2044
|
-
[
|
2045
|
-
"if",
|
2046
|
-
0
|
2047
|
-
],
|
2048
|
-
[
|
2049
|
-
"like",
|
2050
|
-
0
|
2051
|
-
],
|
2052
|
-
[
|
2053
|
-
"love",
|
2054
|
-
0
|
2055
|
-
],
|
2056
|
-
[
|
2057
|
-
"orList",
|
2058
|
-
0
|
2059
|
-
],
|
2060
|
-
[
|
2061
|
-
"then",
|
2062
|
-
0
|
2063
|
-
],
|
2064
|
-
[
|
2065
|
-
"unknown",
|
2066
|
-
0
|
2067
|
-
],
|
2068
|
-
[
|
2069
|
-
"unknown",
|
2070
|
-
1
|
2071
|
-
],
|
2072
|
-
[
|
2073
|
-
"want",
|
2074
|
-
0
|
2075
|
-
]
|
2076
|
-
],
|
2077
2069
|
[
|
2078
2070
|
[
|
2079
2071
|
"if",
|
@@ -2324,6 +2316,10 @@
|
|
2324
2316
|
"unknown",
|
2325
2317
|
0
|
2326
2318
|
],
|
2319
|
+
[
|
2320
|
+
"unknown",
|
2321
|
+
1
|
2322
|
+
],
|
2327
2323
|
[
|
2328
2324
|
"xfx",
|
2329
2325
|
0
|
@@ -2344,7 +2340,7 @@
|
|
2344
2340
|
],
|
2345
2341
|
[
|
2346
2342
|
"unknown",
|
2347
|
-
|
2343
|
+
0
|
2348
2344
|
],
|
2349
2345
|
[
|
2350
2346
|
"xfx",
|
@@ -2362,11 +2358,15 @@
|
|
2362
2358
|
],
|
2363
2359
|
[
|
2364
2360
|
"list",
|
2365
|
-
|
2361
|
+
0
|
2366
2362
|
],
|
2367
2363
|
[
|
2368
2364
|
"unknown",
|
2369
2365
|
1
|
2366
|
+
],
|
2367
|
+
[
|
2368
|
+
"xfx",
|
2369
|
+
0
|
2370
2370
|
]
|
2371
2371
|
],
|
2372
2372
|
[
|
@@ -2385,58 +2385,42 @@
|
|
2385
2385
|
[
|
2386
2386
|
"unknown",
|
2387
2387
|
1
|
2388
|
-
],
|
2389
|
-
[
|
2390
|
-
"xfx",
|
2391
|
-
0
|
2392
2388
|
]
|
2393
2389
|
],
|
2394
2390
|
[
|
2395
2391
|
[
|
2396
2392
|
"between",
|
2397
|
-
|
2393
|
+
0
|
2398
2394
|
],
|
2399
2395
|
[
|
2400
2396
|
"is",
|
2401
2397
|
0
|
2402
2398
|
],
|
2403
2399
|
[
|
2404
|
-
"
|
2400
|
+
"list",
|
2405
2401
|
1
|
2406
|
-
]
|
2407
|
-
],
|
2408
|
-
[
|
2409
|
-
[
|
2410
|
-
"if",
|
2411
|
-
0
|
2412
|
-
],
|
2413
|
-
[
|
2414
|
-
"like",
|
2415
|
-
0
|
2416
2402
|
],
|
2417
2403
|
[
|
2418
|
-
"
|
2419
|
-
|
2404
|
+
"unknown",
|
2405
|
+
1
|
2420
2406
|
],
|
2421
2407
|
[
|
2422
|
-
"
|
2408
|
+
"xfx",
|
2423
2409
|
0
|
2424
|
-
]
|
2410
|
+
]
|
2411
|
+
],
|
2412
|
+
[
|
2425
2413
|
[
|
2426
|
-
"
|
2427
|
-
|
2414
|
+
"between",
|
2415
|
+
1
|
2428
2416
|
],
|
2429
2417
|
[
|
2430
|
-
"
|
2418
|
+
"is",
|
2431
2419
|
0
|
2432
2420
|
],
|
2433
2421
|
[
|
2434
2422
|
"unknown",
|
2435
2423
|
1
|
2436
|
-
],
|
2437
|
-
[
|
2438
|
-
"want",
|
2439
|
-
0
|
2440
2424
|
]
|
2441
2425
|
],
|
2442
2426
|
[
|
@@ -1750,6 +1750,24 @@
|
|
1750
1750
|
1
|
1751
1751
|
]
|
1752
1752
|
],
|
1753
|
+
[
|
1754
|
+
[
|
1755
|
+
"is",
|
1756
|
+
0
|
1757
|
+
],
|
1758
|
+
[
|
1759
|
+
"list",
|
1760
|
+
0
|
1761
|
+
],
|
1762
|
+
[
|
1763
|
+
"unknown",
|
1764
|
+
0
|
1765
|
+
],
|
1766
|
+
[
|
1767
|
+
"unknown",
|
1768
|
+
1
|
1769
|
+
]
|
1770
|
+
],
|
1753
1771
|
[
|
1754
1772
|
[
|
1755
1773
|
"is",
|
@@ -8480,6 +8498,24 @@
|
|
8480
8498
|
1
|
8481
8499
|
]
|
8482
8500
|
],
|
8501
|
+
[
|
8502
|
+
[
|
8503
|
+
"is",
|
8504
|
+
0
|
8505
|
+
],
|
8506
|
+
[
|
8507
|
+
"list",
|
8508
|
+
0
|
8509
|
+
],
|
8510
|
+
[
|
8511
|
+
"unknown",
|
8512
|
+
0
|
8513
|
+
],
|
8514
|
+
[
|
8515
|
+
"unknown",
|
8516
|
+
1
|
8517
|
+
]
|
8518
|
+
],
|
8483
8519
|
[
|
8484
8520
|
[
|
8485
8521
|
"is",
|
@@ -23794,6 +23830,24 @@
|
|
23794
23830
|
1
|
23795
23831
|
]
|
23796
23832
|
],
|
23833
|
+
[
|
23834
|
+
[
|
23835
|
+
"is",
|
23836
|
+
0
|
23837
|
+
],
|
23838
|
+
[
|
23839
|
+
"list",
|
23840
|
+
0
|
23841
|
+
],
|
23842
|
+
[
|
23843
|
+
"unknown",
|
23844
|
+
0
|
23845
|
+
],
|
23846
|
+
[
|
23847
|
+
"unknown",
|
23848
|
+
1
|
23849
|
+
]
|
23850
|
+
],
|
23797
23851
|
[
|
23798
23852
|
[
|
23799
23853
|
"is",
|
@@ -30028,6 +30082,60 @@
|
|
30028
30082
|
1
|
30029
30083
|
]
|
30030
30084
|
],
|
30085
|
+
[
|
30086
|
+
[
|
30087
|
+
"is",
|
30088
|
+
0
|
30089
|
+
],
|
30090
|
+
[
|
30091
|
+
"list",
|
30092
|
+
0
|
30093
|
+
],
|
30094
|
+
[
|
30095
|
+
"unknown",
|
30096
|
+
0
|
30097
|
+
],
|
30098
|
+
[
|
30099
|
+
"unknown",
|
30100
|
+
1
|
30101
|
+
]
|
30102
|
+
],
|
30103
|
+
[
|
30104
|
+
[
|
30105
|
+
"is",
|
30106
|
+
0
|
30107
|
+
],
|
30108
|
+
[
|
30109
|
+
"list",
|
30110
|
+
0
|
30111
|
+
],
|
30112
|
+
[
|
30113
|
+
"unknown",
|
30114
|
+
0
|
30115
|
+
],
|
30116
|
+
[
|
30117
|
+
"unknown",
|
30118
|
+
1
|
30119
|
+
]
|
30120
|
+
],
|
30121
|
+
[
|
30122
|
+
[
|
30123
|
+
"is",
|
30124
|
+
0
|
30125
|
+
],
|
30126
|
+
[
|
30127
|
+
"list",
|
30128
|
+
0
|
30129
|
+
],
|
30130
|
+
[
|
30131
|
+
"unknown",
|
30132
|
+
0
|
30133
|
+
],
|
30134
|
+
[
|
30135
|
+
"unknown",
|
30136
|
+
1
|
30137
|
+
]
|
30138
|
+
],
|
30031
30139
|
[
|
30032
30140
|
[
|
30033
30141
|
"is",
|
@@ -639,6 +639,28 @@
|
|
639
639
|
1
|
640
640
|
]
|
641
641
|
],
|
642
|
+
[
|
643
|
+
[
|
644
|
+
"is",
|
645
|
+
0
|
646
|
+
],
|
647
|
+
[
|
648
|
+
"propertyOf",
|
649
|
+
0
|
650
|
+
],
|
651
|
+
[
|
652
|
+
"the",
|
653
|
+
0
|
654
|
+
],
|
655
|
+
[
|
656
|
+
"unknown",
|
657
|
+
0
|
658
|
+
],
|
659
|
+
[
|
660
|
+
"unknown",
|
661
|
+
1
|
662
|
+
]
|
663
|
+
],
|
642
664
|
[
|
643
665
|
[
|
644
666
|
"is",
|
@@ -746,6 +768,28 @@
|
|
746
768
|
1
|
747
769
|
]
|
748
770
|
],
|
771
|
+
[
|
772
|
+
[
|
773
|
+
"is",
|
774
|
+
0
|
775
|
+
],
|
776
|
+
[
|
777
|
+
"propertyOf",
|
778
|
+
0
|
779
|
+
],
|
780
|
+
[
|
781
|
+
"the",
|
782
|
+
0
|
783
|
+
],
|
784
|
+
[
|
785
|
+
"unknown",
|
786
|
+
0
|
787
|
+
],
|
788
|
+
[
|
789
|
+
"unknown",
|
790
|
+
1
|
791
|
+
]
|
792
|
+
],
|
749
793
|
[
|
750
794
|
[
|
751
795
|
"is",
|
@@ -1063,7 +1063,7 @@
|
|
1063
1063
|
}
|
1064
1064
|
]
|
1065
1065
|
},
|
1066
|
-
"trace": "\n\n>>>>>>>>>>>>> Counter 1\n 0. price/0 (1, 1) - \"price\"\n {\n default: true\n marker: Operator(price/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 1. list/0 (1, 5) - \"and\"\n {\n default: true\n marker: Operator(list/0, PASS, ['Selector(Bridge(\\'{ ...next(operator), listable: true, isList: true, value: append(before, after) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])], bridge(bridge))'], evaluator(Bridge('{ ...next(operator), listable: true, isList: true, value: append(before, after) }')), variables({}) bridge(bridge))\n range: {'start': 6, 'end': 8}\n text: \"and\"\n word: \"and\"\n }\n 2. quantity/0 (1, 9) - \"quantity\"\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n 3. is/0 (1, 12) - \"are\"\n {\n marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge))\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 4. property/0 (1, 18) - \"properties\"\n {\n marker: Operator(property/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is Context({default: True, marker: Operator(price/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge)), range: {'start': 0, 'end': 4}, text: price, value: price, word: price})\n\n>>>>>>>>>>>>> Counter 2\n *0. price/1 (dead) (2, 0) - \"price\"\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 1. list/0 (1, 5) - \"and\"\n {\n default: true\n marker: Operator(list/0, PASS, ['Selector(Bridge(\\'{ ...next(operator), listable: true, isList: true, value: append(before, after) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])], bridge(bridge))'], evaluator(Bridge('{ ...next(operator), listable: true, isList: true, value: append(before, after) }')), variables({'type': ['number', 'property', 'quantity', 'comparable', 'queryable', 'quantifier', 'theAble']}) bridge(bridge))\n range: {'start': 6, 'end': 8}\n text: \"and\"\n types: [\n ]\n word: \"and\"\n }\n 2. quantity/0 (1, 9) - \"quantity\"\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n 3. is/0 (1, 12) - \"are\"\n {\n marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge))\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 4. property/0 (1, 18) - \"properties\"\n {\n marker: Operator(property/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is Context({default: True, marker: Operator(list/0, PASS, ['Selector(Bridge(\\'{ ...next(operator), listable: true, isList: true, value: append(before, after) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])], bridge(bridge))'], evaluator(Bridge('{ ...next(operator), listable: true, isList: true, value: append(before, after) }')), variables({'type': ['number', 'property', 'quantity', 'comparable', 'queryable', 'quantifier', 'theAble']}) bridge(bridge)), range: {'start': 6, 'end': 8}, text: and, types: [], word: and})\n\n>>>>>>>>>>>>> Counter 3\n *0. list/1 (3, 0) - \"price and quantity\"\n {\n prioritized_by: [('list', 0)]\n default: true\n isList: true\n listable: true\n marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['number', 'property', 'quantity', 'comparable', 'queryable', 'quantifier', 'theAble']}) bridge(bridge))\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n 1. is/0 (1, 12) - \"are\"\n {\n marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge))\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 2. property/0 (1, 18) - \"properties\"\n {\n marker: Operator(property/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=2) is Context({marker: Operator(property/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge)), range: {'start': 23, 'end': 32}, text: properties, value: property, word: properties})\n\n>>>>>>>>>>>>> Counter 4\n 0. list/1 (3, 0) - \"price and quantity\"\n {\n prioritized_by: [('list', 0)]\n default: true\n isList: true\n listable: true\n marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['number', 'property', 'quantity', 'comparable', 'queryable', 'quantifier', 'theAble']}) bridge(bridge))\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n 1. is/0 (1, 12) - \"are\"\n {\n marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge))\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n *2. property/1 (dead) (2, 1) - \"properties\"\n {\n prioritized_by: [('property', 0)]\n dead: true\n marker: Operator(property/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is Context({marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge)), number: many, range: {'start': 19, 'end': 21}, text: are, word: are})\n\n>>>>>>>>>>>>> Counter 5\n *0. is/1 (4, 0) - \"price and quantity are properties\"\n {\n prioritized_by: [('is', 0)]\n marker: Operator(is/1, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n number: \"many\"\n one: {\n default: true\n isList: true\n listable: true\n marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['number', 'property', 'quantity', 'comparable', 'queryable', 'quantifier', 'theAble']}) bridge(bridge))\n number: \"many\"\n range: {'start': 0, 'end': 32}\n text: \"price and quantity\"\n types: [\n 'price'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: {\n prioritized_by: [('property', 0)]\n dead: true\n marker: Operator(property/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is Context({marker: Operator(is/1, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge)), number: many, one: Context({default: True, isList: True, listable: True, marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['number', 'property', 'quantity', 'comparable', 'queryable', 'quantifier', 'theAble']}) bridge(bridge)), number: many, range: {'start': 0, 'end': 32}, text: price and quantity, types: ['price'], value: [Context({dead: True, default: True, marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)), range: {'start': 0, 'end': 4}, text: price, value: price, word: price}), Context({default: True, marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge)), range: {'start': 10, 'end': 17}, text: quantity, value: quantity, word: quantity})], word: and}), range: {'start': 0, 'end': 32}, text: price and quantity are properties, two: Context({dead: True, marker: Operator(property/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)), range: {'start': 23, 'end': 32}, text: properties, types: ['property'], value: property, word: properties}), word: are})\n\n>>>>>>>>>>>>> Counter 6\n *0. is/2 (dead) (5, 0) - \"price and quantity are properties\"\n {\n prioritized_by: [('is', 1)]\n dead: true\n marker: Operator(is/2, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n number: \"many\"\n one: {\n default: true\n isList: true\n listable: true\n marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['number', 'property', 'quantity', 'comparable', 'queryable', 'quantifier', 'theAble']}) bridge(bridge))\n number: \"many\"\n range: {'start': 0, 'end': 32}\n text: \"price and quantity\"\n types: [\n 'price'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: {\n prioritized_by: [('property', 0)]\n dead: true\n marker: Operator(property/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n<<<<<<<<<<<<<\n",
|
1066
|
+
"trace": "\n\n>>>>>>>>>>>>> Counter 1\n 0. price/0 (1, 1) - \"price\"\n {\n default: true\n marker: Operator(price/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 1. list/0 (1, 5) - \"and\"\n {\n default: true\n marker: Operator(list/0, PASS, ['Selector(Bridge(\\'{ ...next(operator), listable: true, isList: true, value: append(before, after) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])], bridge(bridge))'], evaluator(Bridge('{ ...next(operator), listable: true, isList: true, value: append(before, after) }')), variables({}) bridge(bridge))\n range: {'start': 6, 'end': 8}\n text: \"and\"\n word: \"and\"\n }\n 2. quantity/0 (1, 9) - \"quantity\"\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n 3. is/0 (1, 12) - \"are\"\n {\n marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge))\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 4. property/0 (1, 18) - \"properties\"\n {\n marker: Operator(property/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is Context({default: True, marker: Operator(price/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge)), range: {'start': 0, 'end': 4}, text: price, value: price, word: price})\n\n>>>>>>>>>>>>> Counter 2\n *0. price/1 (dead) (2, 0) - \"price\"\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n 1. list/0 (1, 5) - \"and\"\n {\n default: true\n marker: Operator(list/0, PASS, ['Selector(Bridge(\\'{ ...next(operator), listable: true, isList: true, value: append(before, after) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])], bridge(bridge))'], evaluator(Bridge('{ ...next(operator), listable: true, isList: true, value: append(before, after) }')), variables({'type': ['comparable', 'theAble', 'quantifier', 'number', 'quantity', 'queryable', 'property']}) bridge(bridge))\n range: {'start': 6, 'end': 8}\n text: \"and\"\n types: [\n ]\n word: \"and\"\n }\n 2. quantity/0 (1, 9) - \"quantity\"\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n 3. is/0 (1, 12) - \"are\"\n {\n marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge))\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 4. property/0 (1, 18) - \"properties\"\n {\n marker: Operator(property/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is Context({default: True, marker: Operator(list/0, PASS, ['Selector(Bridge(\\'{ ...next(operator), listable: true, isList: true, value: append(before, after) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])], bridge(bridge))'], evaluator(Bridge('{ ...next(operator), listable: true, isList: true, value: append(before, after) }')), variables({'type': ['comparable', 'theAble', 'quantifier', 'number', 'quantity', 'queryable', 'property']}) bridge(bridge)), range: {'start': 6, 'end': 8}, text: and, types: [], word: and})\n\n>>>>>>>>>>>>> Counter 3\n *0. list/1 (3, 0) - \"price and quantity\"\n {\n prioritized_by: [('list', 0)]\n default: true\n isList: true\n listable: true\n marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['comparable', 'theAble', 'quantifier', 'number', 'quantity', 'queryable', 'property']}) bridge(bridge))\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n 1. is/0 (1, 12) - \"are\"\n {\n marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge))\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n 2. property/0 (1, 18) - \"properties\"\n {\n marker: Operator(property/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=2) is Context({marker: Operator(property/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge)), range: {'start': 23, 'end': 32}, text: properties, value: property, word: properties})\n\n>>>>>>>>>>>>> Counter 4\n 0. list/1 (3, 0) - \"price and quantity\"\n {\n prioritized_by: [('list', 0)]\n default: true\n isList: true\n listable: true\n marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['comparable', 'theAble', 'quantifier', 'number', 'quantity', 'queryable', 'property']}) bridge(bridge))\n range: {'start': 0, 'end': 17}\n text: \"price and quantity\"\n types: [\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n 1. is/0 (1, 12) - \"are\"\n {\n marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge))\n number: \"many\"\n range: {'start': 19, 'end': 21}\n text: \"are\"\n word: \"are\"\n }\n *2. property/1 (dead) (2, 1) - \"properties\"\n {\n prioritized_by: [('property', 0)]\n dead: true\n marker: Operator(property/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n value: \"property\"\n word: \"properties\"\n }\n<<<<<<<<<<<<<\nNext Op (index=1) is Context({marker: Operator(is/0, [\"Selector(Bridge('{ ...next(operator), one: after[0], two: after[1], query: true }'), , []<==>[Type('queryable'), Type('queryable')], bridge(queryBridge))\", \"Selector(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }'), , [Type('queryable')]<==>[Type('queryable')], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator), one: { number: operator.number, ...before[0] }, two: after[0] }')), variables({}) bridge(bridge)), number: many, range: {'start': 19, 'end': 21}, text: are, word: are})\n\n>>>>>>>>>>>>> Counter 5\n *0. is/1 (4, 0) - \"price and quantity are properties\"\n {\n prioritized_by: [('is', 0)]\n marker: Operator(is/1, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n number: \"many\"\n one: {\n default: true\n isList: true\n listable: true\n marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['comparable', 'theAble', 'quantifier', 'number', 'quantity', 'queryable', 'property']}) bridge(bridge))\n number: \"many\"\n range: {'start': 0, 'end': 32}\n text: \"price and quantity\"\n types: [\n 'price'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: {\n prioritized_by: [('property', 0)]\n dead: true\n marker: Operator(property/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n<<<<<<<<<<<<<\nNext Op (index=0) is Context({marker: Operator(is/1, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge)), number: many, one: Context({default: True, isList: True, listable: True, marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['comparable', 'theAble', 'quantifier', 'number', 'quantity', 'queryable', 'property']}) bridge(bridge)), number: many, range: {'start': 0, 'end': 32}, text: price and quantity, types: ['price'], value: [Context({dead: True, default: True, marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)), range: {'start': 0, 'end': 4}, text: price, value: price, word: price}), Context({default: True, marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge)), range: {'start': 10, 'end': 17}, text: quantity, value: quantity, word: quantity})], word: and}), range: {'start': 0, 'end': 32}, text: price and quantity are properties, two: Context({dead: True, marker: Operator(property/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge)), range: {'start': 23, 'end': 32}, text: properties, types: ['property'], value: property, word: properties}), word: are})\n\n>>>>>>>>>>>>> Counter 6\n *0. is/2 (dead) (5, 0) - \"price and quantity are properties\"\n {\n prioritized_by: [('is', 1)]\n dead: true\n marker: Operator(is/2, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n number: \"many\"\n one: {\n default: true\n isList: true\n listable: true\n marker: Operator(list/1, PASS, ['Selector(Bridge(\\'{ ...operator, value: append(before, operator.value) }\\'), , same/(), [And([\"Type(variable: \\'type\\')\", \"Listable(Unify(Property((\\'context\\', \\'instance\\')), Property((\\'variables\\', \\'instance\\'))))\"])]<==>[], bridge(bridge), passthrough)'], evaluator(Bridge('{ ...operator, value: append(before, operator.value) }')), variables({'type': ['comparable', 'theAble', 'quantifier', 'number', 'quantity', 'queryable', 'property']}) bridge(bridge))\n number: \"many\"\n range: {'start': 0, 'end': 32}\n text: \"price and quantity\"\n types: [\n 'price'\n ]\n value: [\n {\n prioritized_by: [('price', 0)]\n dead: true\n default: true\n marker: Operator(price/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 0, 'end': 4}\n text: \"price\"\n value: \"price\"\n word: \"price\"\n }\n\n {\n default: true\n marker: Operator(quantity/0, [\"Selector(Bridge('{ ...next(operator) }'), , []<==>[], bridge(bridge))\"], evaluator(Bridge('{ ...next(operator) }')), variables({}) bridge(bridge))\n range: {'start': 10, 'end': 17}\n text: \"quantity\"\n value: \"quantity\"\n word: \"quantity\"\n }\n ]\n word: \"and\"\n }\n\n range: {'start': 0, 'end': 32}\n text: \"price and quantity are properties\"\n two: {\n prioritized_by: [('property', 0)]\n dead: true\n marker: Operator(property/1, ['Selector(None, , []<==>[], bridge(bridge))'], evaluator(None), variables({}) bridge(bridge))\n range: {'start': 23, 'end': 32}\n text: \"properties\"\n types: [\n 'property'\n ]\n value: \"property\"\n word: \"properties\"\n }\n\n word: \"are\"\n }\n<<<<<<<<<<<<<\n",
|
1067
1067
|
"contexts": [
|
1068
1068
|
{
|
1069
1069
|
"number": "many",
|