datalog: SX-data embedding API (Phase 9, 143/143)
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 57s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 57s
New lib/datalog/api.sx: dl-program-data facts rules takes SX data lists. Rules accept either dict form or list form using <- as the rule arrow (since SX parses :- as a keyword). dl-rule constructor for the dict shape. dl-assert! adds a fact and re-saturates; dl-retract! drops EDB matches, wipes all rule-headed IDB relations, and re-saturates from scratch — simplest correct semantics until provenance tracking arrives. 9 API tests cover ancestor closure via data, dict-rule form, dl-rule constructor, incremental assert/retract, cyclic-graph reach, assert into empty, fact-style rule (no arrow), dict passthrough.
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"lang": "datalog",
|
||||
"total_passed": 134,
|
||||
"total_passed": 143,
|
||||
"total_failed": 0,
|
||||
"total": 134,
|
||||
"total": 143,
|
||||
"suites": [
|
||||
{"name":"tokenize","passed":26,"failed":0,"total":26},
|
||||
{"name":"parse","passed":18,"failed":0,"total":18},
|
||||
@@ -11,7 +11,8 @@
|
||||
{"name":"builtins","passed":19,"failed":0,"total":19},
|
||||
{"name":"semi_naive","passed":8,"failed":0,"total":8},
|
||||
{"name":"negation","passed":10,"failed":0,"total":10},
|
||||
{"name":"aggregates","passed":10,"failed":0,"total":10}
|
||||
{"name":"aggregates","passed":10,"failed":0,"total":10},
|
||||
{"name":"api","passed":9,"failed":0,"total":9}
|
||||
],
|
||||
"generated": "2026-05-08T08:28:29+00:00"
|
||||
"generated": "2026-05-08T08:33:54+00:00"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user