(Setahu saya) tidak ada yang namanya "bahasa" yang diinterpretasikan atau "bahasa" yang dikompilasi.
Bahasa menentukan sintaksis dan makna kata kunci kode, konstruk alur, dan berbagai hal lainnya, tetapi saya tidak mengetahui bahasa yang menentukan apakah harus dikompilasi atau ditafsirkan dalam spesifikasi bahasa.
Sekarang jika pertanyaan Anda adalah ketika Anda menggunakan kompiler bahasa vs juru bahasa, itu benar-benar turun ke pro / kontra dari kompiler vs interpreter dan tujuan proyek.
Sebagai contoh, Anda dapat menggunakan kompiler JRuby untuk integrasi yang lebih mudah dengan perpustakaan java daripada penerjemah ruby MRI. Ada kemungkinan juga alasan untuk menggunakan juru bahasa rubi MRI di atas JRuby, saya tidak terbiasa dengan bahasa dan tidak dapat berbicara dengan ini.
Manfaat yang didapat dari penerjemah:
- Tanpa kompilasi berarti waktu dari mengedit kode hingga menguji aplikasi dapat dikurangi
- Tidak perlu membuat binari untuk banyak arsitektur karena juru bahasa akan mengelola abstraksi arsitektur (meskipun Anda mungkin masih perlu khawatir tentang skrip yang menangani ukuran integer dengan benar, hanya saja bukan distribusi biner)
Manfaat yang dikemukakan dari kompiler:
- Kode asli yang dikompilasi tidak memiliki overhead juru bahasa dan karena itu biasanya lebih efisien dalam hal waktu dan ruang
- Interoperabilitas biasanya lebih baik, satu-satunya cara untuk in-proc interoperation dengan skrip adalah melalui interpreter daripada FFI standar
- Kemampuan untuk mendukung arsitektur yang belum dikompilasi oleh interpreter (seperti embedded system)
Namun, saya berani bertaruh dalam 90% kasus, ini berjalan seperti ini: Saya ingin menulis perangkat lunak ini di blub karena saya tahu betul dan harus melakukan pekerjaan dengan baik. Saya akan menggunakan interpreter blub (atau kompiler) karena itu adalah metode kanonik yang diterima secara umum untuk menulis perangkat lunak dalam blub.
Jadi TL; DR pada dasarnya, berdasarkan kasus per perbandingan pembanding dengan kompiler untuk kasus penggunaan khusus Anda.
Juga, FFI: Antarmuka Fungsi Asing, dengan kata lain antarmuka untuk beroperasi dengan bahasa lain. Lebih banyak membaca di wikipedia