My answer probably won't expand too much on the existing answers, but I feel like my two cents may be helpful.
First off; yes, for modularity, you usually give up some level of execution time. Writing everything in assembly code is going to give you the best speed. That said...
You know YouTube? Likely either the most high-bandwidth site in existence, or second to Netflix? They write a large portion of their code in Python, which is a highly modular language not quite built for top-notch performance.
The thing is, when something is going wrong, and users are complaining about videos loading slowly, there's not many scenarios where that slowness would ultimately be attributed to the slow execution speed of Python. However, Python's quick re-compilation, and its modular ability to try new things without type-checking will probably allow the engineers to debug what's going wrong pretty quickly ("Wow. Our new intern wrote a loop that does a new SQL sub-query for EVERY result.") or ("Oh, Firefox has deprecated that old caching header format; and they made a Python library to set up the new one easily")
In that sense, even in terms of execution time, a modular language can be thought of as faster because once you find what your bottlenecks are, it will likely become easier to reorganize your code to get it working in the best way. So many engineers will tell you that the heavy performance hits weren't where they thought they'd be (and in fact the things they DID optimize were hardly needed; or, didn't even work the way they'd expect!)