From 6aaec3b6982efad12240b4f8ee05372fc7fb8391 Mon Sep 17 00:00:00 2001 From: Esteban Zimanyi Date: Sat, 13 Jun 2026 10:37:22 +0200 Subject: [PATCH] Make the comparison families consistent camelCase (tempEq/everEq/alwaysEq) The three comparison families now share one camelCase shape {Eq,Ne,Lt,Le, Gt,Ge}: temporal #= -> tempEq..., ever ?= -> everEq..., always %= -> alwaysEq... . Previously #= was the lowercase teq/tne... and the ever/always families were listed under alreadyCanonical (left as snake ever_*/always_*), i.e. with no portable bare name at all. That violated the contract's own goal (every operator has its bare name on every engine, no exclusions) and left the th3 prefilter predicate without a portable name. Adds everComparison/alwaysComparison to families (6 operators each) and drops the ever/always alreadyCanonical entries. Matches MobilityDB#1075's generator (OP_TO_NAME) so every binding regenerates the same names. --- meta/portable-aliases.json | 62 ++++++++++++++------------------------ 1 file changed, 22 insertions(+), 40 deletions(-) diff --git a/meta/portable-aliases.json b/meta/portable-aliases.json index cf8f456..94a6c50 100644 --- a/meta/portable-aliases.json +++ b/meta/portable-aliases.json @@ -98,30 +98,28 @@ } ], "temporalComparison": [ - { - "operator": "#=", - "bareName": "teq" - }, - { - "operator": "#<>", - "bareName": "tne" - }, - { - "operator": "#<", - "bareName": "tlt" - }, - { - "operator": "#<=", - "bareName": "tle" - }, - { - "operator": "#>", - "bareName": "tgt" - }, - { - "operator": "#>=", - "bareName": "tge" - } + { "operator": "#=", "bareName": "tempEq" }, + { "operator": "#<>", "bareName": "tempNe" }, + { "operator": "#<", "bareName": "tempLt" }, + { "operator": "#<=", "bareName": "tempLe" }, + { "operator": "#>", "bareName": "tempGt" }, + { "operator": "#>=", "bareName": "tempGe" } + ], + "everComparison": [ + { "operator": "?=", "bareName": "everEq" }, + { "operator": "?<>", "bareName": "everNe" }, + { "operator": "?<", "bareName": "everLt" }, + { "operator": "?<=", "bareName": "everLe" }, + { "operator": "?>", "bareName": "everGt" }, + { "operator": "?>=", "bareName": "everGe" } + ], + "alwaysComparison": [ + { "operator": "%=", "bareName": "alwaysEq" }, + { "operator": "%<>", "bareName": "alwaysNe" }, + { "operator": "%<", "bareName": "alwaysLt" }, + { "operator": "%<=", "bareName": "alwaysLe" }, + { "operator": "%>", "bareName": "alwaysGt" }, + { "operator": "%>=", "bareName": "alwaysGe" } ], "distance": [ { @@ -141,22 +139,6 @@ ] }, "alreadyCanonical": [ - { - "kind": "family", - "family": "ever", - "operators": [ - "?=" - ], - "pattern": "ever_*" - }, - { - "kind": "family", - "family": "always", - "operators": [ - "%=" - ], - "pattern": "always_*" - }, { "kind": "functions", "functions": [