diff --git a/docs/DESIGN.md b/docs/DESIGN.md index 559675f..f1f5fd7 100644 --- a/docs/DESIGN.md +++ b/docs/DESIGN.md @@ -453,13 +453,13 @@ on the shelf for a future iter only if both fail. ### Form refinements during implementation -Two productions in the original 14b sketch had to be widened +Two productions in the original sketch had to be widened during implementation to round-trip the existing AST faithfully. Captured here for the spec record: 1. **`lam-term` carries types and effects.** The AST's `Term::Lam` stores parallel `params`, `param_tys`, `ret_ty`, and `effects` - fields. The 14b sketch had only names. The implemented form is + fields. The original sketch had only names. The implemented form is ``` lam-term ::= "(" "lam" "(" "params" typed-param* ")" @@ -1203,7 +1203,7 @@ per entry. Form-B (prose) renders one `// @suppress : ` line per entry above the doc string — lossless, contract metadata. -Skipped from serialisation when empty so pre-19b fixtures keep +Skipped from serialisation when empty so existing fixtures keep bit-identical canonical-JSON hashes (regression-pinned by `iter19b_empty_suppress_preserves_pre_19b_hashes` and `iter19b_schema_extension_preserves_pre_19b_hashes`). @@ -1538,7 +1538,7 @@ of default-bearing methods. ``` When `forall` is empty, `constraints` is also empty (and may be -omitted for hash stability of pre-22a definitions). Each constraint's +omitted for hash stability of older definitions). Each constraint's `type` field MUST reference a type variable bound by the surrounding `forall`.