Skip to content

docs(thesis): rewrite FFL scoping to the shipped relative model#21

Merged
rlemke merged 1 commit into
mainfrom
docs/thesis-relative-scoping-rewrite
Jul 13, 2026
Merged

docs(thesis): rewrite FFL scoping to the shipped relative model#21
rlemke merged 1 commit into
mainfrom
docs/thesis-relative-scoping-rewrite

Conversation

@rlemke

@rlemke rlemke commented Jul 13, 2026

Copy link
Copy Markdown
Owner

Recast Chapter 4 and all four addendums from the old flat container model to the relative $-scoping the compiler now ships.

Chapter 4 (thesis.md)

  • §4.2/§4.3$ = immediate container; $$/$$$ walk up one lexical level each; steps in other blocks are never nameable.
  • §4.3.2 (new) — nested blocks + up-level operators, anchored on the real migrated ExtractPlacesAcrossSubregions fanout and the o1/o2/o3 shadowing case that forces $$$ (REF_DOLLAR_OVERFLOW at $$$$); adds the facet-typed-parameter decomposition idiom as the anti-pyramid pattern.
  • §4.5.1 — fix the step-level-block example: container is the step itself ($.a, never g.a); the caller is reached with $$.
  • §4.6 — fix the stale catch example: $ is the caught step, exposing synthetic $.error_type/$.error; workflow inputs via $$.

Every FFL snippet was validated against the live compiler (relative scoping default-on).

Addendums

  • ai-authorship.md — AI authored the redesign end-to-end; the parked $$-contract data point.
  • defense.md — corrected Q8's stale prediction; added Q8a (up-levels + parked caller-contract) and Q8b (decomposition idiom + live flag-gated migration).
  • future-thoughts-ai-native.md — terse-$ operators as a machine-oriented-notation data point; §9 centerpiece on AI-authored language + migration + deployment.
  • future-thoughts-positioning-dissent.md — new §7 partitioning the optimistic claim.

PDFs regenerated.

🤖 Generated with Claude Code

Recast Chapter 4 (and all four addendums) from the old flat container
model to the relative $-scoping the compiler now ships:

- §4.2/§4.3: $ = immediate container; $$/$$$ walk up one lexical level
  each; steps in other blocks are never nameable.
- §4.3.2 (new): nested blocks + up-level operators, anchored on the real
  migrated ExtractPlacesAcrossSubregions fanout and the o1/o2/o3
  shadowing case that forces $$$ (REF_DOLLAR_OVERFLOW at $$$$); adds the
  facet-typed-parameter decomposition idiom as the anti-pyramid pattern.
- §4.5.1: fix the step-level-block example — container is the step
  itself ($.a, never g.a); the caller is reached with $$.
- §4.6: fix the stale catch example — $ is the caught step, exposing
  synthetic $.error_type/$.error; workflow inputs via $$.

Every FFL snippet validated against the live compiler (relative scoping
default-on). Addendums (ai-authorship, defense Q8a/Q8b, future-thoughts
ai-native §9, positioning-dissent §7) document the AI-authored redesign,
migration, and fleet deployment. PDFs regenerated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@rlemke rlemke merged commit b3eca4b into main Jul 13, 2026
18 of 20 checks passed
@rlemke rlemke deleted the docs/thesis-relative-scoping-rewrite branch July 13, 2026 18:16

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates several thesis chapters to document the transition of FFL's scoping model from a flat container scheme to a relative scoping model using $, $$, and $$$ operators. The updates cover the design rationale, nested block resolution, live migration strategy, and the balance between AI-driven terseness and human legibility. The feedback suggests correcting "dual-modeled" to "dual-modelled" in future-thoughts-positioning-dissent.md to maintain consistent UK spelling throughout the thesis.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.


### 7.3 The "simple" migration was safe because of the boring discipline around it

Finally, the episode is a corrective to the "just let the agent rewrite it" gloss. The migration did not land as a big-bang replacement. It shipped flag-gated behind a dual model, backward-compatible — the new runtime still runs old FFL — with layered verification at each stage and a live rollout across the fleet rather than an in-place swap. That is competent, ordinary engineering discipline: compatibility windows, staged rollout, a rollback path. It is also exactly the discipline that the optimistic phrase elides. The agent's fluency at *writing* the redesign is real; what made the redesign *safe to deploy* was the same set of practices any careful team would have insisted on, and none of them were made unnecessary by the fact that an agent produced the diff. The headline ("an agent redesigned the language and shipped it") is true. The subtext ("and it was safe because it was dual-modeled, compat-preserving, staged, and reversible") is where the actual assurance lives — and that subtext is human-invariant.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The spelling "dual-modeled" uses the US convention. To maintain consistency with the UK spelling style used throughout the rest of the thesis (e.g., "modelling", "apologised", "serialised", "favour", "generalisation"), this should be changed to "dual-modelled".

Suggested change
Finally, the episode is a corrective to the "just let the agent rewrite it" gloss. The migration did not land as a big-bang replacement. It shipped flag-gated behind a dual model, backward-compatible — the new runtime still runs old FFL — with layered verification at each stage and a live rollout across the fleet rather than an in-place swap. That is competent, ordinary engineering discipline: compatibility windows, staged rollout, a rollback path. It is also exactly the discipline that the optimistic phrase elides. The agent's fluency at *writing* the redesign is real; what made the redesign *safe to deploy* was the same set of practices any careful team would have insisted on, and none of them were made unnecessary by the fact that an agent produced the diff. The headline ("an agent redesigned the language and shipped it") is true. The subtext ("and it was safe because it was dual-modeled, compat-preserving, staged, and reversible") is where the actual assurance lives — and that subtext is human-invariant.
The subtext ("and it was safe because it was dual-modelled, compat-preserving, staged, and reversible") is where the actual assurance lives — and that subtext is human-invariant.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant