Fix form-language template: vernacular strata, natural materials default
Sheffield/Harbor House drafting exposed two gaps: the template let a historical stratum be anchored by a single celebrated/architect-authored building (Park Hill) instead of a genuine building culture, and let modern structural materials (reinforced concrete) into the vocabulary without requiring a structural-necessity justification. Tightens the HISTORICAL_STRATA placeholder guidance, the vocabulary/negative-constraint instructions, and the Appendix instruction to close both gaps. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
parent
b259252cea
commit
a3a3598919
1 changed files with 83 additions and 45 deletions
|
|
@ -1,35 +1,46 @@
|
|||
# Form-Language Prompt Template
|
||||
|
||||
*A reusable prompt for generating a project-specific architectural
|
||||
form-language grammar module, in the style pioneered for this project.*
|
||||
form-language grammar module.*
|
||||
|
||||
## Provenance
|
||||
|
||||
This template generalizes the two-step prompting process Nikos Salingaros
|
||||
used to produce `ref/Ecuadorian_Form_Language_Grammar.md`
|
||||
(`docs/salingaros-form-language-prompt.md` — his initial and follow-up
|
||||
prompts), collapsed into a single one-shot prompt with placeholders for
|
||||
region, climate, site, and building typology. The required output shape
|
||||
(§0–§11 + appendix below) mirrors the structure of that worked example,
|
||||
which should be used as the calibration reference for filling this
|
||||
template in and for judging any grammar it produces.
|
||||
This template is self-contained — everything needed to run it is in the
|
||||
"Placeholders" and "The prompt" sections below. This section and "Usage
|
||||
notes" are background only, safe to skip.
|
||||
|
||||
The template generalizes a two-step prompting process Nikos Salingaros
|
||||
used to produce a form-language grammar for a National Museum of Ecuador
|
||||
project (his initial exploratory prompt, then a follow-up narrowing
|
||||
scope), collapsed here into a single one-shot prompt with placeholders for
|
||||
region, climate, site, and building typology. That original worked
|
||||
example and his raw two-step prompts are project-specific files from the
|
||||
originating repository and aren't included with this template; §0–§11 +
|
||||
appendix below is this template's own self-sufficient output shape, not
|
||||
dependent on that example.
|
||||
|
||||
The theoretical basis is Salingaros' *pattern language + form language =
|
||||
adaptive design method* (`ref/Salingaros-Chapter-11-Two-Languages-for-Architecture.md`):
|
||||
a pattern language alone cannot connect to built form without a
|
||||
adaptive design method*, set out in Chapter 11, "Two Languages for
|
||||
Architecture," of his book *A Theory of Architecture* (2006; revised
|
||||
2014): a pattern language alone cannot connect to built form without a
|
||||
complementary form language of geometric/tectonic rules. This template
|
||||
generates that second, complementary document.
|
||||
generates that second, complementary document. It is meant to be paired
|
||||
with a pattern-language module such as Christopher Alexander, Sara
|
||||
Ishikawa, and Murray Silverstein's *A Pattern Language* (1977), from which
|
||||
a project-specific subset of patterns is typically curated.
|
||||
|
||||
## What this produces
|
||||
|
||||
A structured **grammar document**, not images and not a narrative — a
|
||||
module meant to be handed, alongside a pattern-language module, a project
|
||||
brief, and a spatial-chassis module, into a *later* prompt that asks an
|
||||
LLM to write the experiential design narrative (see the paper's Section
|
||||
4.2 approach, `ref/buildings-15-02400-v2.txt`). Color and ornament are
|
||||
left as a menu of selectable registers/packages rather than a single fixed
|
||||
choice, so that later narrative/image generation can sample distinct
|
||||
combinations and a human can select among them.
|
||||
LLM to write the experiential design narrative (see Section 4.2 of Postle,
|
||||
B.; Salingaros, N.A. "LLM and Pattern Language Synthesis: A Hybrid Tool
|
||||
for Human-Centered Architectural Design." *Buildings* 2025, 15, 2400).
|
||||
Color and ornament are left as a menu of selectable registers/packages
|
||||
rather than a single fixed choice, so that later narrative/image
|
||||
generation can sample distinct combinations and a human can select among
|
||||
them.
|
||||
|
||||
## Placeholders
|
||||
|
||||
|
|
@ -44,7 +55,7 @@ instruction at all.
|
|||
| `{WIDE_REGION}` | The broad cultural/geographic region to draw form vocabulary from — narrow enough that its history is genuinely coherent (so the strata actually relate to one another), broad enough to give real stylistic range; usually a country or a historically-linked macro-region, not a continent | Ecuador (and neighboring Latin America for the "neighbor techniques" package) |
|
||||
| `{FIXED_SITE}` | The specific city/site the climate script must be fixed to | Quito, Ecuadorian sierra |
|
||||
| `{CLIMATE_SEED_FACTS}` | Known climate facts to ground the research (latitude, altitude, temperature range, rainfall pattern, sun/UV character, seasonality or lack of it) — prevents hallucinated climate data | ≈0.2° S / ≈2,850 m; 9–22 °C year-round; ~1,000–1,250 mm/yr rain, two peaks; near-zenith sun, high UV; no seasons |
|
||||
| `{HISTORICAL_STRATA}` | The historical/cultural strata to synthesize across, oldest to newest (or `(let the model propose)`). Not every region has an indigenous or pre-colonial stratum in the sense the Ecuador example does — for a region without one, list whatever historical building cultures it does have instead (e.g. vernacular farmhouse, Roman, medieval, renaissance, industrial-era) rather than forcing an indigenous/colonial framing onto it | indigenous wooden/conical-roof structures; pre-Columbian stone monumental; early colonial wood/earth; later colonial baroque |
|
||||
| `{HISTORICAL_STRATA}` | The historical/cultural strata to synthesize across, oldest to newest (or `(let the model propose)`). Not every region has an indigenous or pre-colonial stratum in the sense the Ecuador example does — for a region without one, list whatever historical building cultures it does have instead (e.g. vernacular farmhouse, Roman, medieval, renaissance, industrial-era) rather than forcing an indigenous/colonial framing onto it. Each stratum must name a **building culture** — an ordinary construction tradition recurring across many buildings — not a single celebrated or architect-authored structure: a region's industrial-era stratum, for instance, usually means its ordinary workshop-houses, mill housing, and tenement factories, where industrial and residential use routinely overlapped in the same buildings, not one landmark 20th-century showpiece | indigenous wooden/conical-roof structures; pre-Columbian stone monumental; early colonial wood/earth; later colonial baroque |
|
||||
| `{SCALE_NOTES}` | Programmatic/scale notes that affect massing (approx. size, public vs. civic character, number of principal volumes) | ~25,000 m² minimum, high-visitation civic building |
|
||||
| `{DOWNSTREAM_MODULES}` | What other prompt modules this will be combined with later (fixed boilerplate unless the project's pipeline differs) | brief constraints, spatial chassis |
|
||||
|
||||
|
|
@ -74,6 +85,19 @@ building, site, or tradition you name as drawn from your training-data
|
|||
familiarity, not from verified research, and say so plainly rather than
|
||||
presenting recollection as verified fact.
|
||||
|
||||
**Default to natural, traditional materials.** The vocabulary (§3) should
|
||||
default to natural, traditional materials — stone, brick, timber, earth,
|
||||
tile — drawn from {WIDE_REGION}'s own building cultures. Modern
|
||||
structural materials (reinforced concrete, steel) belong in the
|
||||
vocabulary only where {TYPOLOGY} genuinely cannot achieve its required
|
||||
spans, loads, or heights without them, not as an independent aesthetic
|
||||
stratum or a source of decorative expression in their own right. Where
|
||||
they are included, express them honestly as structure — an honestly
|
||||
exposed frame, not concrete dressed up to imitate a natural material, and
|
||||
not hidden behind an applied natural-material skin either — and justify
|
||||
each such element in §3 by the specific structural need, not by
|
||||
stylistic preference.
|
||||
|
||||
**Fix the climate and site, but not the vocabulary.** The building itself
|
||||
is fixed at {FIXED_SITE}: {CLIMATE_SEED_FACTS}. Derive from this a set of
|
||||
climate facts and the mandatory design responses they imply (roof form,
|
||||
|
|
@ -143,7 +167,10 @@ of generated projects stays traceable and comparable.
|
|||
3. **Form vocabulary (lexicon)** — elements grouped by tectonic family
|
||||
(ground/platform, wall, roof/sky, threshold/in-between, interior, or
|
||||
whatever families fit this typology), each tagged with its origin
|
||||
stratum and region, each given a short reusable code.
|
||||
stratum and region, each given a short reusable code. Each element
|
||||
should be natural/traditional material by default; if any element
|
||||
uses a modern structural material instead, tag it as such and state
|
||||
the specific structural necessity that justifies it.
|
||||
|
||||
4. **Syntax — combination rules** — numbered, always-apply rules for how
|
||||
the vocabulary combines: stratification/ordering logic, relationship
|
||||
|
|
@ -204,8 +231,11 @@ of generated projects stays traceable and comparable.
|
|||
without one; always forbid mixing two color registers in one
|
||||
project, more than one figurative ornament episode, evenly
|
||||
distributed ornament, literal uncredited copying of a named
|
||||
historical building, and applying any motif flagged in §6 as
|
||||
sacred/ceremonial without the noted consultation caveat).
|
||||
historical building, applying any motif flagged in §6 as
|
||||
sacred/ceremonial without the noted consultation caveat, and using a
|
||||
modern structural material where §3 recorded no genuine structural
|
||||
necessity for it, or disguising one material as another instead of
|
||||
expressing it honestly).
|
||||
|
||||
11. **Glossary** — every non-English or specialist term used above,
|
||||
defined in one line, to be used verbatim (not paraphrased) by any
|
||||
|
|
@ -215,10 +245,15 @@ of generated projects stays traceable and comparable.
|
|||
{HISTORICAL_STRATA}, list two or three named real buildings, sites, or
|
||||
artifact traditions from {WIDE_REGION} that anchor it, as reference
|
||||
points — not to be copied, but so a later reader can verify the grammar
|
||||
is genuinely grounded in something real. For each one, note briefly
|
||||
whether it's a well-documented example you're confident about or a
|
||||
plausible-but-unverified recollection — don't present both with equal
|
||||
certainty.
|
||||
is genuinely grounded in something real. Each precedent should be
|
||||
representative of that stratum's wider building culture, not the sole
|
||||
reason the stratum exists — if a stratum can only be anchored by one
|
||||
celebrated landmark with no supporting ordinary/vernacular examples, that
|
||||
is a sign it isn't really a building culture (see the {HISTORICAL_STRATA}
|
||||
placeholder note) and should be broadened, merged, or dropped rather than
|
||||
listed as-is. For each precedent, note briefly whether it's a
|
||||
well-documented example you're confident about or a plausible-but-unverified
|
||||
recollection — don't present both with equal certainty.
|
||||
|
||||
Scale notes for the project this grammar will serve: {SCALE_NOTES}.
|
||||
|
||||
|
|
@ -226,26 +261,29 @@ Scale notes for the project this grammar will serve: {SCALE_NOTES}.
|
|||
|
||||
## Usage notes
|
||||
|
||||
- The worked example this template generalizes
|
||||
(`ref/Ecuadorian_Form_Language_Grammar.md`) is the calibration
|
||||
reference for level of detail, tone, and coding conventions (its `E#`
|
||||
element codes, `C#`/`G#`/`P#`/`O#` rule codes, `CR#`/`OP#` register/
|
||||
package codes). A generated grammar doesn't need identical codes, but
|
||||
should be at a comparable level of precision and equally traceable.
|
||||
- Salingaros' original process was two prompts — an open exploratory
|
||||
first pass, then a follow-up narrowing scope (fix climate to the
|
||||
specific site, keep vocabulary regional, drop a single color/ornament
|
||||
choice in favor of a menu, and reframe the output as a prompt module
|
||||
rather than an image request). This template front-loads that
|
||||
narrowing into one prompt; if the first response still drifts (e.g.
|
||||
proposes a single color and ornament choice, or narrows vocabulary to
|
||||
only the immediate site), send a follow-up correcting just that point
|
||||
rather than re-running the whole prompt.
|
||||
- Check the output for fidelity the same way pattern-language narratives
|
||||
are checked (see CLAUDE.md's "Method" step 3): any climate rule,
|
||||
vocabulary element, or precedent that isn't grounded in something real
|
||||
for {WIDE_REGION}/{FIXED_SITE} is a hallucination to catch and
|
||||
regenerate away.
|
||||
- Aim for a comparable level of precision and traceability throughout: a
|
||||
short, consistent code per element/rule/register/package (e.g. a
|
||||
letter-plus-number scheme such as `G1`, `G2` for ground-family
|
||||
elements, `W1`, `W2` for wall elements, `R#` for roof, `CR#` for color
|
||||
registers, `OP#` for ornament packages — the exact letters don't
|
||||
matter, only that every reusable item gets one and later prompts can
|
||||
cite it unambiguously). Every rule and vocabulary element should be
|
||||
traceable to a named stratum/tradition within {WIDE_REGION}, not
|
||||
presented as free invention.
|
||||
- The two-step process this template collapses into one shot was: an
|
||||
open exploratory first pass, then a follow-up narrowing scope (fix
|
||||
climate to the specific site, keep vocabulary regional, drop a single
|
||||
color/ornament choice in favor of a menu, and reframe the output as a
|
||||
prompt module rather than an image request). This template
|
||||
front-loads that narrowing into one prompt; if the first response
|
||||
still drifts (e.g. proposes a single color and ornament choice, or
|
||||
narrows vocabulary to only the immediate site), send a follow-up
|
||||
correcting just that point rather than re-running the whole prompt.
|
||||
- Check the output for fidelity: any climate rule, vocabulary element, or
|
||||
precedent that isn't grounded in something real for
|
||||
{WIDE_REGION}/{FIXED_SITE} is a hallucination to catch and regenerate
|
||||
away, the same way a pattern-language narrative generated downstream
|
||||
should be checked against its selected pattern subset.
|
||||
- Salingaros described his original prompt as asking the LLM to "locate
|
||||
open-source images of traditional buildings" and synthesize from them.
|
||||
It's unclear whether that literally happened, as opposed to the model
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue