Interpreter adalah program sistem yang berfungsi
sebagai penerjemah kode program yang dibuat oleh progammer kedalam bahasa
mesin. Interpreter mengeksekusi perintah baris demi baris dengan mengikuti
logika yang ada.
Kompiler adalah program sistem yang juga berfungsi
sebagai penerjemah kode program kedalam bahasa mesin agar bisa dijalankan oleh
mesin. Perbedaannya dengan interpreter adalah kompiler mengeksekusi seluruh
instruksi dalam program sekaligus.
Perbedaan antara Kompiler dengan Interpreter :
v Untuk menjalankan
program hasil kompilasi (hasil kompiler) dapat dilakukan tanpa membutuhkan
source kode. Kalau interpreter membutuhkan source kode.
v Jika dengan kompiler,
maka pembuatan kode yang bisa dijalankan mesin dilakukan dalam 2 tahap
terpisah, yaitu parsing (pembuatan kode objek) dan linking (penggabungan kode
objek dengan library). Kalau interpreter tidak ada proses terpisah.
v Jika kompiler
membutuhkan linker untuk menggabungkan kode objek dengan berbagai macam library
demi menghasilkan suatu kode yang bisa dijalankan oleh mesin, kalau interpreter
tidak butuh linker untuk menggabungkan kode objek dengan berbagai macam
library.
v Interpreter cocok untuk
membuat/menguji coba modul (sub-routine/program-program kecil). Maka kompiler
akan repot karena untuk mengubah suatu modul/kode kecil, maka harus dilakukan
proses linking/penggabungan kembali semua objek dengan library yang diperlukan.
v Pada kompiler bisa
dilakukan optimisasi/peningkatan kualitas kode yang bisa dijalankan. Ada optimisasi
supaya lebih cepat, ada yang supaya lebih kecil, ada yang dioptimisasi untuk
sistem dengan banyak processor. Kalau interpreter susah atau bahkan tidak bisa
dioptimisasi.
Tidak ada komentar:
Posting Komentar