From f49890e12d7eb6a766b966438cd475f7cbf5081b Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Thu, 8 Oct 2026 00:59:05 -0300 Subject: rework evaluators and add schema scope --- lib/kernel/Schema.mli | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 lib/kernel/Schema.mli (limited to 'lib/kernel/Schema.mli') diff --git a/lib/kernel/Schema.mli b/lib/kernel/Schema.mli new file mode 100644 index 0000000..7970ee2 --- /dev/null +++ b/lib/kernel/Schema.mli @@ -0,0 +1,23 @@ +(** A schema: its relations, \schema\[s]\relation\[r]. For now only a + namespace for them. *) +module Make (S : Abstract.Storage.STORAGE) : sig + include Merkle.VALUE + + val load : + ?bind:EphemeralRelation.binding -> + S.connection -> + t -> + (Protocols.Handle.t, Concepts.Condition.condition) result + + (** a schema handed over with no address, as a directory holding its + relations under \relation, to store once the write has begun. A + relation with no address is stored as a program if it is one, and + as the tuples it holds if not. *) + val admit : + string -> + Protocols.Handle.t -> + (S.transaction Prototype.Associative.admission, Concepts.Condition.condition) result + + (** an empty one, stored. *) + val make : S.connection -> (Protocols.Handle.t, Concepts.Condition.condition) result +end -- cgit v1.2.3