Моя відповідь, ймовірно, не надто розшириться на існуючі відповіді, але я відчуваю, що мої два центи можуть бути корисними.
По-перше; так, для модульності ви зазвичай відмовляєтеся від певного рівня часу на виконання. Якщо все записати в асемблерний код, ви отримаєте найкращу швидкість. Це сказало ...
Ви знаєте YouTube? Ймовірно, чи найпопулярніший веб-сайт із пропускною здатністю, чи другий за Netflix? Вони пишуть велику частину свого коду на Python, що є високомодульною мовою, не зовсім побудованою для найвищої продуктивності.
Річ у тім, що коли щось йде не так, і користувачі скаржаться на повільне завантаження відео, не так багато сценаріїв, де ця повільність в кінцевому рахунку була б віднесена до повільної швидкості виконання Python. Однак швидка перекомпіляція Python та його модульна здатність пробувати нові речі без перевірки типу, ймовірно, дозволять інженерам досить швидко налагоджувати те, що відбувається не так ("Нічого. Наш новий стажер написав цикл, який робить новий підзапит SQL" для ВСЯКОГО результату. ") або (" О, Firefox застарів цей старий формат заголовка кешування; і вони створили бібліотеку Python, щоб легко встановити новий ")
У цьому сенсі, навіть з точки зору часу виконання, модульну мову можна вважати як швидше, тому що як тільки ви знайдете, які ваші вузькі місця, вам, швидше за все, стане легше реорганізувати ваш код, щоб він працював найкращим чином. Так багато інженерів скажуть вам, що важкі хіти продуктивності були не там, де вони думали, що вони будуть (а насправді речі, які вони оптимізували, навряд чи були потрібні; або навіть не працювали так, як вони очікували!)