Type Safety

Use when reasoning about types as a quality property of code: what guarantees the type system actually provides, the difference between sound and unsound systems, structural vs nominal typing, type narrowing and exhaustiveness, the runtime/compile-time boundary, and where validation must happen because the type system cannot. Covers TypeScript, Flow, Hindley-Milner languages, and gradual typing in general. Do NOT use for runtime input validation library choice (use api-design for API surface validation; use individual library docs for library mechanics), for SQL type mapping (use entity-relationship-modeling), or for type system implementation (compilers — out of scope).

jacob-balslev Updated

File contents

jacob-balslev/skills/tree/main/skills/quality-assurance/type-safety commit 99d4f060e8

Frequently asked questions

npx skillmds@latest add jacob-balslev/type-safety-2