|
|
|
|
|
by kqr
489 days ago
|
|
To be fair, "The Substitution Principle" (more commonly known as "equational reasoning" in this context) has never been valid in any languages that aren't... Haskell, and maybe Ada? Any expression that can trigger side effects is an unsafe substitution. (The reason such substitutions are safe in Haskell and Ada is that those languages prevent expressions from triggering side effects in the first place.) |
|
Given that one of the fundamental rules of programming is "don't use magic numbers, prefer named constants", that's terrible language design.