Parent: #7
Goal
Close the remaining pure-language OPY syntax gaps that can be implemented and verified without Workshop lowering or catalog ownership.
Context
The current frontend already covers the declared core syntax/control-flow surface, but compatibility/support-matrix.json still records pure OPY syntax gaps such as switch/case/default, do…while, hex literals, expression-level membership, string modifiers, dicts, comprehensions, and lambda forms. These are language-frontend concerns and should be resolved before the Workshop integration stage.
Scope
- Implement and corpus-test
switch / case / default.
- Implement and corpus-test
do … while.
- Implement hexadecimal numeric literals where accepted by the pinned OverPy oracle.
- Implement expression-level
in / not in semantics where independently evidenced.
- Implement the remaining inventory-backed string modifier forms (
f/w/l/b/c/t) with reference-compatible parse/semantic behavior.
- Implement dict literals, list comprehensions, and lambda forms that belong to the declared OverPy compatibility surface.
- Preserve trivia/source spans/provenance and recoverable diagnostics so tooling APIs remain usable on the new constructs.
- Add positive/negative minimized fixtures and oracle probes for every newly supported form.
- Update human and machine-readable compatibility evidence only when implementation/tests justify the status change.
Non-goals
- Workshop lowering or emission.
- Canonical Workshop builtin/enum/member validation.
- Inventing WrightKit-only OPY syntax or improving upstream syntax beyond observable compatibility.
- Matching upstream parser internals or formatting.
Acceptance criteria
- The pure syntax rows currently tracked as
planned no longer remain planned without an explicit evidence-backed reason.
- Reference-accepted syntax in scope parses/resolves through Opy HIR or an appropriate OPY semantic representation with stable source provenance.
- Invalid/reference-rejected variants produce structured diagnostics rather than panics or silent acceptance.
- Differential evidence distinguishes genuine native gaps from unsupported/out-of-scope behavior.
- Existing tooling APIs and compatibility corpus remain green.
- No
workshop-rs dependency or Workshop catalog data is introduced.
Parent: #7
Goal
Close the remaining pure-language OPY syntax gaps that can be implemented and verified without Workshop lowering or catalog ownership.
Context
The current frontend already covers the declared core syntax/control-flow surface, but
compatibility/support-matrix.jsonstill records pure OPY syntax gaps such asswitch/case/default,do…while, hex literals, expression-level membership, string modifiers, dicts, comprehensions, and lambda forms. These are language-frontend concerns and should be resolved before the Workshop integration stage.Scope
switch/case/default.do … while.in/not insemantics where independently evidenced.f/w/l/b/c/t) with reference-compatible parse/semantic behavior.Non-goals
Acceptance criteria
plannedno longer remainplannedwithout an explicit evidence-backed reason.workshop-rsdependency or Workshop catalog data is introduced.