Describe
Stable — Stable features are ones that have earned their place in the core prose language.
universe ClockworkVillage {
describe {
A quiet village simulation where the focus is observation,
relationships, and small moments.
}
}
What it is
Meaning, in plain language. A describe block is where a named thing says what it is, in sentences a person reads rather than something a machine executes.
Anything can be described — the universe, and every concept, kind, relationship and pairing that comes after it. Experimentally, so can a single connection. Descriptions are the content of a universe. Everything else is structure holding them in place.
The village has a name and now it has a meaning. Nothing else about it has changed.
Where it can live
Inside any block, including the universe block. One per scope.
Experimentally, a describe can also sit in the block that follows a target in a relationships block, where it is about that one connection. Relationships shows how, under Each edge, separately.
How names find it
Nothing. A describe block holds text, and nothing inside it resolves to anything else in the universe.
That is a decision rather than an omission. Describe has no link form and no reference syntax, and prose makes no claim about how the text is rendered — it is kept exactly as written. A connection between two things is a relationship, not a mention inside a paragraph.
How it breaks
- SP003
DuplicateDescribeError— A scope may have only one describe. - SP018
UnclosedDescribeError— A describe or title block never got its closing brace.
Decided in
- ADR011
ExpectsBlock— Expects block. Proposed. - ADR015
MarkdownInDescribe— Markdown in describe. Accepted. - ADR016
UsingMarkdown— Using markdown. Accepted. - ADR017
LinksInDescribe— Links in describe. Accepted. - ADR018
TemporalDimensions— Temporal dimensions. Proposed. - ADR029
EdgeBlocks— Edge blocks. Accepted. - ADR030
DescribeInEdgeBlocks— Describe in edge blocks. Proposed. - ADR031
BracesInProse— Braces in prose. Proposed.