aboutsummaryrefslogtreecommitdiffstats
path: root/docs/subsystem-interop.org
diff options
context:
space:
mode:
authorMarcos Magueta <maguetamarcos@gmail.com>2026-10-31 02:30:40 -0300
committerMarcos Magueta <maguetamarcos@gmail.com>2026-10-31 02:30:40 -0300
commit55dd8ebfdd2629f97388e52953fe5bbd52733745 (patch)
tree8f8d607c6cfa73f1de24d0dde3ef39b42752b577 /docs/subsystem-interop.org
parent71856adc5ff5d64c7be1b37854fc8a205d55e482 (diff)
downloadRNT-55dd8ebfdd2629f97388e52953fe5bbd52733745.tar.gz
RNT-55dd8ebfdd2629f97388e52953fe5bbd52733745.zip
update docs with partial bindings
Diffstat (limited to 'docs/subsystem-interop.org')
-rw-r--r--docs/subsystem-interop.org23
1 files changed, 23 insertions, 0 deletions
diff --git a/docs/subsystem-interop.org b/docs/subsystem-interop.org
new file mode 100644
index 0000000..b8503c1
--- /dev/null
+++ b/docs/subsystem-interop.org
@@ -0,0 +1,23 @@
+RNT is going for a route of a microkernel, and here is one use case
+for its servers: imagine a subsystem A and subsystem B. Each register
+an evaluator and has their specific program image execution from their
+own server, operating under an RNT supervisor. A program image from
+subsystem A should be able to invoke and interop with programs from B,
+as they both share the common ephemeral relation protocol.
+
+A more concrete case that is warranted is Sakura and Karuta. Here is a
+brief introduction of what each is:
+
+- Sakura :: A purely relational algebra system that performs strictly
+ first order logic for data retrieval, and integrates other
+ subsystems for DDL, DML and version control.
+- Karuta :: A logic language targeting the BEAM, similar to Prolog,
+ but that operates under microKanren.
+
+Karuta compiles programs to a /.beam/ format, and embeds them with two
+additional /.lfe/ files: karuta.lfe & sakura.lfe, and executes them with
+/play/ lfescript that glues all together.
+
+Our goal with the subsystem integration is to make Karuta produce
+Sakura programs (it already does), that can be loaded as program
+images on RNT, executing through the registered evaluator.