MPS — система типов и вывод типов

★ 7.9 · vibe-coding

mps-aspect-typesystem is a Claude Code skill that supports authoring and debugging the typesystem aspect of an MPS language — covering inference rules (`InferenceRule` with `:==:` / `:<=:` / `:>=:` equations), lattice rules (`SubtypingRule`, `ComparisonRule`, `InequationReplacementRule`, `SubstituteTypeRule`), `WhenConcreteStatement` blocks for deferred type resolution, non-typesystem checking rules (`NonTypesystemRule`) with error/warning/info reports, and quick fixes wired through `TypesystemQuickFix` and `helginsIntention`. The skill guides the full workflow: creating the `<lang>.typesystem` model, declaring used languages, writing rule bodies in BaseLanguage with smodel and collections, and validating with `mps_mcp_check_root_node_problems`. Reach for it whenever the task involves editing `<lang>/languageModels/typesystem.mps`. It is aimed at DSL developers who need to define type semantics, highlight semantic errors, or attach quick fixes to reports in MPS.