Gaya Hidup

Prolog dan Lisp dalam Teknologi, pengertian, perbedaan

Pengantar Prolog dan Lisp

Prolog dan Lisp merupakan dua bahasa pemrograman komputer AI (Artificial Intelligence) yang paling populer saat ini. Mereka dibangun dengan dua paradigma pemrograman yang berbeda.

Prolog adalah bahasa deklaratif, sedangkan Lisp adalah bahasa fungsional. Keduanya digunakan untuk berbagai masalah AI tetapi Prolog paling banyak digunakan untuk masalah logika dan penalaran, sedangkan Lisp digunakan untuk masalah dengan kebutuhan pembuatan prototipe cepat.

Prolog

Prolog adalah bahasa pemrograman AI. Itu milik keluarga bahasa pemrograman logika.

Prolog adalah bahasa deklaratif, di mana perhitungan dilakukan dengan menjalankan kueri pada relasi (yang mewakili logika program), yang didefinisikan sebagai aturan dan fakta. Dikembangkan pada tahun 1970, prolog adalah salah satu bahasa pemrograman logika tertua dan salah satu bahasa pemrograman AI terpopuler saat ini (bersama dengan Lisp).

Ini adalah bahasa gratis, tetapi banyak varian komersial tersedia. Ini pertama kali digunakan untuk pemrosesan bahasa alami, tetapi sekarang telah digunakan untuk berbagai tugas seperti sistem pakar, sistem penjawab otomatis, permainan, dan sistem kontrol lanjutan.

Prolog hanya memiliki satu tipe data yang disebut istilah. Istilah dapat berupa atom, angka, variabel, atau suku majemuk.

Angka bisa mengambang atau bilangan bulat. Prolog mendukung daftar dan string sebagai kumpulan item.

Prolog mendefinisikan relasi menggunakan klausa. Klausa dapat berupa aturan atau fakta.

Prolog memungkinkan iterasi melalui predikat rekursifnya. Pelat

Lisp adalah keluarga bahasa pemrograman komputer.

Dan dialek Lisp paling terkenal yang digunakan untuk pemrograman tujuan umum saat ini adalah Common Lisp and Scheme. Nama LISP berasal dari “LISt Processing” dan seperti petunjuknya, struktur data utama Lisp adalah linked list.

Sebenarnya seluruh sumber ditulis menggunakan daftar (menggunakan notasi awalan), atau lebih tepatnya daftar dalam tanda kurung (disebut ekspresi-s). Misalnya, pemanggilan fungsi ditulis sebagai (f a1 a2 a3), yang artinya fungsi f dipanggil menggunakan a1, a2 dan a3 sebagai argumen input untuk fungsi tersebut.

Oleh karena itu disebut bahasa berorientasi ekspresi, di mana semua data dan kode ditulis sebagai ekspresi (tidak ada perbedaan antara ekspresi dan pernyataan di Lisp). Fitur bagus ini sangat spesial untuk Lisp, di mana fitur ini dapat digunakan untuk memperluas bahasa ke masalah yang ada dengan menulis makro yang berguna.

Meskipun tail-recursion digunakan oleh pemrogram untuk mengekspresikan loop, semua dialek Lisp yang sering terlihat menyertakan struktur kontrol seperti loop. Selanjutnya, Common Lisp dan skema memiliki mapcar dan peta yang merupakan contoh fungsi, yang menyediakan fungsionalitas perulangan dengan menerapkan fungsi secara berurutan ke semua elemennya dan kemudian mengumpulkan hasilnya ke dalam daftar.

Apa perbedaan antara Prolog dan Lisp?

Meskipun Prolog dan Lisp adalah dua bahasa pemrograman AI paling populer, mereka memiliki berbagai perbedaan. Lisp adalah bahasa fungsional, sedangkan Prolog adalah bahasa pemrograman logika dan deklaratif.

Lisp sangat fleksibel karena pembuatan prototipe dan fitur makro yang cepat, sehingga sebenarnya memungkinkan perluasan bahasa agar sesuai dengan masalah yang dihadapi. Di bidang AI, grafik, dan antarmuka pengguna, Lisp telah digunakan secara luas karena kemampuan pembuatan prototipe yang cepat ini.

Namun, karena kemampuan pemrograman logika bawaannya, Prolog sangat ideal untuk masalah AI dengan aplikasi penalaran simbolik, basis data, dan parsing bahasa. Pilihan satu di atas yang lain sepenuhnya bergantung pada jenis masalah AI yang perlu diselesaikan.