vak: (Default)
Serge Vakulenko ([personal profile] vak) wrote2022-08-07 02:28 pm

Виртуальные машины не то чтобы зло...

При прочих равных я всегда предпочитаю родные бинарники. Серьёзная программа должна выполняться в машинных кодах, как предписано разработчиком процессора. Виртуальных машин избегаю по возможности. Они обычно только вносят лишнюю сумятицу.

К примеру, Питон, отличный язык, но построенный вокруг специальной виртуальной машины. Вопрос на засыпку: сколько разных копий Питона установлено на вашем компьютере? Я глянул на своём маке:
  • собственно Питона установлено четыре версии: 2.7, 3.8, 3.9, 3.10
  • копия Питона 3.7 внутри приложения LibreOffice
  • три лишних копии Питона 3.8 в приложениях XCode, Apple CLI Tools и KiCad
  • ещё одна копия Питона 3.9 в компиляторе для ESP32
  • плюс десять копий Питона 3.10 в утилитах awscli, bpytop, gallery-dl, glances, meson, scons, sip, sphinx-doc, xonsh, youtube-dl
Итого 19 штук одного Питона. Отдельно можно посчитать Java, .NET, Ruby, Guile, Lua и другие. Налицо нездоровая тенденция виртуальных машин плодиться и замусоривать пространство. Версии плодятся, и чтобы избежать проблем несовместимости каждый софтверный продукт стремится тащить с собой отдельную копию каждой виртуальной машины. 

[personal profile] caztd 2022-08-08 03:43 pm (UTC)(link)
-- это проблема не новая
-- конечно, любой package manager решает ту же самую проблему вполне себе эффективно
-- ну да, возьмем к примеру npm
-- б*ъ*/*%*&*ъ!!!!

[personal profile] caztd 2022-08-08 08:19 pm (UTC)(link)
поговорим об этом когда у cargo будет столько же идиотов пользователей как у npm.