О модных языках программирования

Долгое время меня ставила в тупик популярность Python в бекенд-разработке: понятно, что прототипировать и прикидывать на этом языке удобно, но выполняется-то код медленно! Кому — думал я — в здравом уме придёт в голову писать «боевой» код с заведомо плохой производительностью (а следовательно, повышенными затратами на инфраструктуру)?! Потом я узнал, что многие распространённые библиотеки для Python (особенно такие, где производительность критична) «под капотом» написаны на C++, а то и на C, и всё стало понятно.

Аналогичной загадкой для меня была популярность Rust. Я прекрасно понимаю, для каких задач этот язык подходит (намного!) лучше других, но используют-то его отнюдь не только для таких задач. В некотором смысле Rust — противоположность Python: код, получающийся «на выходе», работает быстро, но писать его настолько утомительно, что в подавляющем большинстве случаев — по моим ощущениям — игра совершенно не стоит свеч. Однако ж пишут…

Сегодня в одном из чатов глаз зацепился за ссылку на один такой проект. «Это-то зачем на Rust? Вот маньяки!» — подумал я, и полез поглядеть. Оказалось, что для сборки и запуска этого кода в системе нужны:

  • GCC,
  • Go,
  • Python версии не ниже 3.9,
  • make и cmake,
  • ну и ещё там всякого по мелочам.

Зато на Rust, да.