Re:Bracha v Felleisen “Types for an Untyped World” (2015) [v...
by nickpsecurity on Monday May 29, 2017 @11:55AM
(#14439724)
That was solved with formal specifications in languages such as Z, CSP, ASM's, B, and recently TLA+. Even if you don't do proof, high-assurance projects would specify context of sequential components in such languages to find mismatches at interfaces, protocol errors, and so on. It got pretty easy to do, too. The tooling is really good for that now esp on TLA+ end.
So, there's not so much a problem in programming languages with architecture so much as programmers ignoring proven ways of catching such problems. Usually what I just mentioned plus review and testing. People like hwayne are laying groundwork for reductions in this problem by making accessible tutorials showing practical value of such techniques.
And that's the problem right there. There is sooo much that is out of whack with programming, even sequential.
For starters look up 'architectural mismatch'.