Answer item 162: a name is a lexical closure, two spellings stay refused for their two readings, and items 164 to 166 plan the three that load

This commit is contained in:
2026-10-09 10:41:54 +02:00
committed by Lillem4n
parent 221ce82e43
commit bad74f95cd
3 changed files with 26 additions and 8 deletions
+6
View File
@@ -835,6 +835,12 @@ the same whoever references it. Such a read opens the frames around where it lan
name from its pick's memo, so `{n}` and `{n.path}` read one pick of each name inside, and a
reference or `Fake` fresh ones.
A name is a closure: it reaches every template nested inside the scope binding it, its
fields, choice items and repeats, and keeps one pick through the draw, while a name bound
inside a repeat picks anew on each iteration. It never reaches into a category a reference
enters. A name an enclosing scope binds may not be bound again, so no name shadows another.
The maintainer ruled so on 2026-10-09.
A pick keeps only the levels a read of the name addresses, so a template draws the same way
under a name as anywhere else (goal 5.2). A read of a name bound to a field stays in the
category's frames, since the field sits inside it.