From d6fec698fd8a6b853cc03a96c75fd994c8f095fd Mon Sep 17 00:00:00 2001 From: Hassan Abedi Date: Wed, 13 May 2026 12:54:12 +0200 Subject: [PATCH] WIP --- storage/001-geomerge-public-api-and-features.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/storage/001-geomerge-public-api-and-features.md b/storage/001-geomerge-public-api-and-features.md index f5b3ef6..4b200fc 100644 --- a/storage/001-geomerge-public-api-and-features.md +++ b/storage/001-geomerge-public-api-and-features.md @@ -26,18 +26,17 @@ Native version control, large-scale concurrency, conflict resolution, general qu ## Terminology -**Geomerge**: The storage-engine prototype in this repository. It loads a compiled Geolog theory, creates tables, accepts row additions, checks laws, -and can persist and reload store state. +**Geomerge**: A storage-engine prototype for compiled Geolog theories. It loads a compiled Geolog theory, creates tables, accepts row additions, +checks laws, and can persist and reload store state. -**Geolog**: The larger database and logic system that Geomerge is intended to support. In this repo, Geolog mainly appears through compiled IR data -that Geomerge can load. +**Geolog**: The larger database and logic system that Geomerge is intended to support. Geomerge consumes compiled Geolog IR data. **Compiled Theory**: A ready-to-load description of tables and laws. In code, this is `FlatTheory`. **FlatTheory**: The top-level IR object Geomerge consumes. It contains a list of table definitions and a list of law definitions. **IR**: Intermediate representation. It is the structured data format shared by `geolog-lang` and `geomerge`, rather than the source syntax a user -might write it by hand. +might write by hand. **Path**: A stable name for a table or law, such as `Graphs`, `G.V`, or `Hom.E.foreignKeys`. Geomerge uses paths in public operations because paths are more portable than internal table ids. @@ -189,7 +188,7 @@ Main accessors: - `Store::dump`: debug rendering of all tables - `Store::check_laws`: full law validation over current store contents -`Store::insert_table` is public, but the project notes indicate schema-driven table creation is the intended normal path. +`Store::insert_table` is public, but schema-driven table creation through `Store::try_from_theory` is the intended normal path. ---