The behavior space model 1 classifies software behaviors by whether they are specified (Sv, Su) or unspecified (Ev, Eu). We apply this model to type systems. Static type systems generate Sv automatically —every type declaration is a compiler-verified specification. Behaviors derived beyond explicit intentconstitute Ev, but unlike test-based Ev, they require zero human management cost. Dynamic languages force all type-level verification into linear-cost test-based Ev. Gradual type systems (TypeScript, Pythontype hints) are structurally more hazardous than either: Sv and E are expressed in identical syntax,rendering their boundary invisible within the same codebase. Under AI-assisted development, where codegeneration volume makes language-level Sv yield an organizational infrastructure question, thesestructural differences become critical.
Franny Philos Sophia (Tue,) studied this question.