1537th strip of the webcomic xkcd
How to migrate from legacy JavaScript enum patterns like Object.freeze to Flow Enums.
Understand when Flow requires explicit type annotations under Local Type Inference and when types can be inferred automatically.
Match patterns both define a condition that must be matched, and new variables that are extracted (like destructuring).
A visual overview of Flow's type hierarchy showing the subtyping relationships between all built-in types.
How Flow narrows types based on conditional checks, typeof, equality, and other runtime tests.
How Flow merges multiple declarations of the same name — interfaces, classes, and namespaces.
How Flow handles subtyping for objects, including depth subtyping with read-only properties and width subtyping.
AI defaults to primitives because primitives dominate its training data. The gap between that and theorized code is something you can grep for.