2 ms·
Well said. There are many kinds of behavior that may be considered "out of specification" or not adhering to a contract. Here are just four: * https://en.wikip
by dj-wonk 8y ago
Well said. There are many kinds of behavior that may be considered "out of specification" or not adhering to a contract. Here are just four:
* https://en.wikipedia.org/wiki/Undefined_behavior https://en.wikipedia.org/wiki/Undefined_behavior
* https://en.wikipedia.org/wiki/Timing_attack https://en.wikipedia.org/wiki/Timing_attack
* https://en.wikipedia.org/wiki/Thread_safety https://en.wikipedia.org/wiki/Thread_safety
* https://en.wikipedia.org/wiki/Privilege_escalation https://en.wikipedia.org/wiki/Privilege_escalation
Some of these probably don't come to everyone's minds right away. Please share your favorites.
The behavior(s) that a particular language guarantees is a design question. Once those guarantees are specified, we can objectively evaluate a particular language in terms of how well it does according to its own standards.