The single example I typically give is that in Python you can inspect stack frames after they've exited! This has concrete implications on your VM design.
Another example is that the multiple dispatch protocol for binary operations (such as addition) is sufficiently complicated that you generally cannot encode it into your compiler. We have been able to have a simplified version of that by building a tracing JIT for C, which is able to understand the dispatch protocol, but it is not always applicable.
Source: I've been working on Python optimization for several years as part of the Pyston project.