Answer product-owner round 4: say a column reading a bound column of its own record is that column

This commit is contained in:
2026-10-05 10:12:16 +02:00
committed by Lillem4n
parent 7a4f95ce15
commit 87106f450a
2 changed files with 8 additions and 6 deletions
+4 -3
View File
@@ -449,9 +449,10 @@ order.id: datatype integer: {digits(3)} prints text, not an integer
order.id: datatype integer: "1{digits(2)}" is not one value; write one literal or one {float()}, {int()}, {seq()} or {calc()}, or read one
```
A column whose format is one read of another record's column and nothing else —
`"score": "{/src.score}"`, or `"score": "{s.score}"` with `s` bound to `/src` — is that column: it takes the column's datatype and is null where the column is, and
a struct field tagged `src.score` is nil there. A `datatype` of its own types the
A column whose format is one read of a record's column and nothing else —
`"score": "{/src.score}"`, `"score": "{s.score}"` with `s` bound to `/src`, or `"a": "{p}"`
beside `{place as p}` in its own record — is that column: it takes the column's datatype and
is null where the column is, and a struct field tagged `src.score` is nil there. A `datatype` of its own types the
column's values where they prove it, and one restating the datatype it takes is refused.
Any other read renders the column's text, a null as `""`.
+4 -3
View File
@@ -350,9 +350,10 @@ value, a range check is one comparison, and `1{digits(2)}` is a second spelling
2026-09-15, Lilleman auf Larv.
`{/src.score}` renders exactly what `src.score` draws, and so does `{s.score}` where `s` is
bound to `/src`, so it takes that column's datatype and null rather than restating them, and a `datatype` restating the one it
takes is a second spelling. Any other `datatype` still types the values — the one way to
`{/src.score}` renders exactly what `src.score` draws, and so do `{s.score}` where `s` is
bound to `/src` and `{p}` where `p` is bound to the column `place` of its own record, so it
takes that column's datatype and null rather than restating them, and a `datatype`
restating the one it takes is a second spelling. Any other `datatype` still types the values — the one way to
type a column someone else wrote.
## A typed column's calc is refused unless proven