CPython and PyPy behave differently with the following code:
$ cat diffs.py
print(str(0) is str(0))
$ python3 diffs.py
False
$ pypy diffs.py
True
Deliberate Flexibility
Semi-inevitable Flexibility
e.g. timing
Undesirable Flexibility
Unknown Flexibility
- Not considered when designing the language
- such as memory model (how read/write memory in a concurrent environment)