Diğer bir sebep ise JVM'nin yüksek düzeyde optimize edilmiş, iyi gelişmiş ve son derece eksiksiz bir ekosistem olmasıdır. Kendi başına, diğer derlenmiş dillerden herhangi biriyle son derece iyi rekabet eder. (Bunun en iyi genel amaçlı VM olduğunu söyleyemem , ancak kariyerimi bu konuda kesinlikle banka ettim.) Bu nedenle JVM'ye, bytecode yazma yetkisi dışında erişebilmek kendi başına arzu edilir.
Ancak, Python VM iyidir, ancak (Python'a karşı hiçbir şey) bazı ciddi eksiklikleri vardır. Python çalışma ortamı dilin dinamik yapısına iyi uyum sağlar, ancak bellek kullanımı, genel kilitleme veya iş parçacığı modeli hakkında bilgi edindiğinizde sizi gerçekten şaşırtabilir.
Başa baş karşılaştırmalarda, JVM tipik olarak Python VM'den iki kat daha hızlıdır. JVM (şaşırtıcı bir şekilde) gerçekleştirdiği "sıcak" optimizasyonlara dayanarak doğal olarak derlenmiş kodlarla bile rekabet eder. Ve bu daha sofistike iplik işleme vb. Sayılmaz.
Python'u seviyorum, gerçekten söylüyorum ve söylemekten nefret ediyorum, ama bazen performans beni dişlerime atıyor - aksi halde niye numpy veya scipy gibi kritik Python kütüphanelerinin tekrar C koduna düşmesi gerekiyor?
Başka bir deyişle, Python'u çeken insanlar , dili sevdikleri için yaparlar . Ancak, tercihlerinize göre yepyeni bir dil yazmak istiyorsanız, JVM'ye derlemekten çok daha iyi bir durumdasınız, çünkü yeni kendine özgü diliniz mevcut olan en iyi (belki de en iyi) işletim ortamlarından birinde başlayacaktır.