Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 27s
New lib/datalog/magic.sx — first piece of magic-sets:
dl-adorn-arg arg bound → "b" or "f"
dl-adorn-args args bound → adornment string
dl-adorn-goal goal → adornment under empty bound set
dl-adorn-lit lit bound → adornment of any literal
dl-vars-bound-by-lit lit bound → free vars this lit will bind
dl-init-head-bound head adn → bound set seeded from head adornment
dl-rule-sips rule head-adn → ({:lit :adornment} ...) per body lit
SIPS walks left-to-right tracking the bound set; recognises `is` and
aggregate result-vars as new binders, lets comparisons and negation
pass through with computed adornments.
Inspection-only — saturator doesn't yet consume these. Lays
groundwork for a future magic-sets transformation.
10 new tests cover pure adornment, SIPS over a chain rule,
head-fully-bound rules, comparisons, and `is`. Total 194/194.
33 lines
1.1 KiB
Plaintext
33 lines
1.1 KiB
Plaintext
# Datalog conformance config — sourced by lib/guest/conformance.sh.
|
|
|
|
LANG_NAME=datalog
|
|
MODE=dict
|
|
|
|
PRELOADS=(
|
|
lib/datalog/tokenizer.sx
|
|
lib/datalog/parser.sx
|
|
lib/datalog/unify.sx
|
|
lib/datalog/db.sx
|
|
lib/datalog/builtins.sx
|
|
lib/datalog/aggregates.sx
|
|
lib/datalog/strata.sx
|
|
lib/datalog/eval.sx
|
|
lib/datalog/api.sx
|
|
lib/datalog/magic.sx
|
|
lib/datalog/demo.sx
|
|
)
|
|
|
|
SUITES=(
|
|
"tokenize:lib/datalog/tests/tokenize.sx:(dl-tokenize-tests-run!)"
|
|
"parse:lib/datalog/tests/parse.sx:(dl-parse-tests-run!)"
|
|
"unify:lib/datalog/tests/unify.sx:(dl-unify-tests-run!)"
|
|
"eval:lib/datalog/tests/eval.sx:(dl-eval-tests-run!)"
|
|
"builtins:lib/datalog/tests/builtins.sx:(dl-builtins-tests-run!)"
|
|
"semi_naive:lib/datalog/tests/semi_naive.sx:(dl-semi-naive-tests-run!)"
|
|
"negation:lib/datalog/tests/negation.sx:(dl-negation-tests-run!)"
|
|
"aggregates:lib/datalog/tests/aggregates.sx:(dl-aggregates-tests-run!)"
|
|
"api:lib/datalog/tests/api.sx:(dl-api-tests-run!)"
|
|
"magic:lib/datalog/tests/magic.sx:(dl-magic-tests-run!)"
|
|
"demo:lib/datalog/tests/demo.sx:(dl-demo-tests-run!)"
|
|
)
|