> Completely understanding the types in your program forces you to think carefully about the domain.
Isn't it the other way around? Types derived from analysing the problem domain? That's the basic premise of a bunch of software design techniques.
Isn't it the other way around? Types derived from analysing the problem domain? That's the basic premise of a bunch of software design techniques.