aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorMarcos Magueta <maguetamarcos@gmail.com>2026-10-24 22:07:40 -0300
committerMarcos Magueta <maguetamarcos@gmail.com>2026-10-24 22:07:40 -0300
commit4994bc0aacf08cf69bfaa3e31bd6767050f55efd (patch)
tree3d21152a1829232ce0a2d0d1808338fff834e2da /docs
parent8dd98ab247db83c6e7a49676f562f2cf18237700 (diff)
downloadRNT-4994bc0aacf08cf69bfaa3e31bd6767050f55efd.tar.gz
RNT-4994bc0aacf08cf69bfaa3e31bd6767050f55efd.zip
proper beam evaluator
Diffstat (limited to '')
-rw-r--r--docs/roadmap.org9
1 files changed, 6 insertions, 3 deletions
diff --git a/docs/roadmap.org b/docs/roadmap.org
index c9d14cc..f36bdbd 100644
--- a/docs/roadmap.org
+++ b/docs/roadmap.org
@@ -131,7 +131,10 @@ These do not block the steps above.
- Programs that change state have no result protocol.
- Once [[file:../lib/kernel/Merkle.ml][Merkle]] chunking depends only on the tuples a tree holds,
maintenance can be checked by comparing addresses instead of tuples.
-- =Path.update= keeps the target it looks up and never releases it, so
- each call leaks one reference to a counted namespace. This came with
- the lifecycle rework and needs a decision.
+- Storing a relation reads it whole. [[file:../lib/kernel/Multigroup.ml][Multigroup]] admits a relation by
+ draining it with =Relation.read= before the write begins, and
+ [[file:../lib/kernel/SubstantialRelation.ml][SubstantialRelation]] builds its tree from that list. Streaming the
+ cursor into the tree instead would read during the write, holding
+ the writer lock while the relation is computed, and =with_batch=
+ would still keep every node it makes until the batch ends.
- The signatures in [[file:object-system.org][the object system]] predate the code.