Saya sedang membaca artikel ini . Ini memiliki paragraf berikut.
Dan apakah Scala berubah menjadi cepat? Nah, apa definisi Anda tentang puasa? Tentang secepat Java. Tidak harus secepat C atau Assembly. Python tidak jauh lebih cepat daripada Ruby. Kami ingin berbuat lebih banyak dengan lebih sedikit mesin, mengambil keuntungan lebih baik dari konkurensi; kami ingin itu dikompilasi sehingga tidak membakar CPU melakukan hal yang salah.
Saya mencari arti dari kalimat terakhir. Bagaimana bahasa yang ditafsirkan akan membuat CPU melakukan hal yang "salah"?
performance
cpu
compilation
pengguna2434
sumber
sumber
Jawaban:
Jika kode mengatakan
kode yang dikompilasi melakukan ini
kode yang ditafsirkan melakukan ini (atau beberapa variasi)
dapatkan ide?
sumber
Kedengarannya seperti mereka mengacu pada dikompilasi vs ditafsirkan. Kemungkinan besar turun ke seluruh cerita tentang Twitter yang memindahkan tugas pemrosesan latar belakang ke Scala (dikompilasi) setelah awalnya berkembang di Ruby On Rails (ditafsirkan).
Penjelasan tentang kode yang dikompilasi vs ditafsirkan di sini .
sumber
"Barang-barang yang salah" di sini berarti overhead yang diperlukan oleh juru bahasa untuk mengurai dan memproses kode. Ini terhubung dengan gagasan bahasa yang ditafsirkan vs dikompilasi. Ada beberapa model terjemahan kode yang digunakan, yang secara kasar masuk dalam salah satu kategori berikut:
Oleh karena itu pilihan antara bahasa yang ditafsirkan dan dikompilasi bermuara pada pertanyaan, apa yang kita nilai lebih, produktivitas atau kinerja pengembang? Migrasi yang dijelaskan dalam artikel ini tampaknya mengikuti garis pemikiran yang sama, dengan bahasa prototip yang kuat Ruby digantikan oleh Scala berbasis JVM karena pertimbangan kinerja.
sumber
Dalam hal ini saya menganggap
the wrong stuff
kurangnya jenis keamanan dalam kode yang tidak dikompilasi.Dengan demikian, tidak hanya ditafsirkan kode lebih lambat, tetapi juga lebih buggy ...
sumber