Visual Prolog Environment (VPE). VPE didesain agar seorang programer dapat dengan mudah, nyaman dan cepat dalam membangun, menguji dan memodifikasi suatu aplikasi atau programyang ditulis dalam visual prolog. VPE memiliki beberapa varian sehingga mendukung untuk digunakan di beberapa platform sistem operasi.
Membuka jendela editor. Untuk menciptakan jendela editor yang baru, kita dapat menggunakan menu perintah File | New. Lalu akan muncul jendela editor baru.Editor ini layaknya seperti editor teks standar lainnya. Kita dapat menggunakan tombol kursor dan mouse untuk menggerakkan kursor. Editor ini juga menu Edit ; seperti cut, copy, paste, serta undo/ redo.
Menjalankan dan menguji program. Untuk mengeksekusi suatu GOAL dari program yang telah kita buat kita dapat mengaktifkan item menu Project | Test Goal, atau cukup dengan menekan tombol akselerator Ctrl+G.
Melihat dan memperbaiki kesalahan. Jika programer membuat kesalahan dalam menuliskan kode visual prolog, maka VPE akan menampilkan jendela kesalahan dimana pada jendela tersebut terdapat daftar kesalahan yang dibuat. Programer dapat men-double klik kesalahan tersebut agar kursor beralih dari posisi di mana kesalah dibuat pada baris kode di jendela editor, sehingga akan lebih cepat menemukan kesalahan tersebut dan segera dapat diperbaiki.
source sederhana dari visual prolog
predicates
putra(string,string)
saudara_perempuan(string,string)
saudara_laki(string,string)
menikah(string,string)
ayah(string ayah,string putra)
kakek(string kakek,string cucu)
nondeterm ipar_perempuan(string,string)
clauses
putra("ikhsan","bentang").
saudara_perempuan("dini","dina").
saudara_laki("adi","lintang").
menikah("ikhsan","dini").
menikah("lintang","surga").
ayah(A,B):-putra(B,A).
kakek(A,B):-ayah(A,C),ayah(C,B).
ipar_perempuan(A,B):-menikah(A,C),saudara_perempuan(C,B).
ipar_perempuan(A,B):-saudara_laki(A,C),menikah(C,B).
goal
ipar_perempuan ("ikhsan", X).
Visual Prolog Environment (VPE), merupakan GUI (Graphical User Interface) dari Visual Prolog. Didesain untuk programer agar lebih dapat dengan mudah, nyaman dan cepat dalam membangun, menguji dan memodifikasi suatu aplikasi atau program. Prolog merupakan bahasa deskriptif, ini artinya untuk memperoleh suatu penyelesaian dari sebuah masalah dibutuhkan sebuah fakta dan aturan-aturan, serta berfikir secara deduktif.
Goal dalam VPE merupakan fungsi untuk menampilkan hasil eksekusi dari program yang telah dibuat pada VPE, bila tidak terjadi kesalahan maka tampilan akan sesuai dengan yang diinginkan.
PREDICATES merupakan fungsi untuk memberikan gambaran akan fakta-fakta yang ada di fungsi CLAUSES, sedangkan fungsi clauses merupakan fungsi untuk memberikan fakta-fakta yang ada untuk memberikan gambaran kepada VPE dalam melakukan penujian untuk mencari solusi dari pertanyaan yang diberikan.
Putra (STRING,STRING) adalah fungsi dimana dalam memberikan pernyataan atau fakta terhadap putra mempunyai satuan fungsi string dalam VPE. melakukan penujian untuk mencari solusi dari pertanyaan yang diberikan.
Saudara_perempuan (STRING,STRING) dalam pernyataan saudara perempuan mempunyai nilai string dalam VPE.
Saudara_laki (STRING,STRING) dalam pernyataan saudara laki mempunyai nilai string dalam VPE.
menikah (STRING,STRING) dalam pernyataan menikah mempunyai nilai string dalam VPE.
Ayah (STRING ayah,STRING putra) dalam pernyataan ayah mempunyai dua nilai yang sama yaitu pernyataan ayah dan pernyataan putra yang masing-masnig mempunyai nilai string.
Nondeterm ipar_perempuan (STRING,STRING) merupakan fungsi non-deterministik yaitu suatu predikat yang yang mempunyai lebiah dari satu jawaban atau solusi yang ada dalam VPE, sedangkan ipar_perempuan mempunyai nilai string.
Putra (”Ikhsan”,”Bentang”) merupakan pendeklarasian dalam VPE dan dapat dibaca Ikhsan putranya Bentang.
Saudara_perempuan (”Dini”,”Dina”) dapat dibaca Dini saudara perempuannya Dina.
Saudara_laki (”Adi”,”Lintang”) dapat dibaca Adi saudara laki-lakinya Lintang.
Menikah (”Ikhsan”,”Dini”) dapat dibaca Ikhsan menikah dengan Dini.
Menikah (”Lintang”,”Surga”) dapat dibaca Lintang menikah dengan Surga.
Deklarasi ayah(A,B):-anak(B,A). maksud dari deklarasi di samping adalah bahwa deklarasi ayah sama dengan deklarasi anak yaitu dibaca A adalah ayahnya B sama dengan B anaknya A.
Deklarasi kakek(A,B):-ayah(A,C), ayah(C,B) merupakan pendeklarasian dimana A adalah kakeknya B, sedangkan pada ruai kanan dapat dibaca A adalah ayahnya C dan C adalah ayahnya B, sehingga ruas kanan adalah penjabaran dari ruas kuri.
Pada GOAL terdapat deklarasi pernyataan ipar perempuan (”Ikhsan”,X). Pernyataan itu dapat dibaca Ikhsan mempunyai ipar perempuan X dimanaX adalah statement pengganti untuk mencari jawaban atau solosi dari PREDICATES yang bernilai string untuk saudara perempuan.
Setelah menuliskan(copy) program dalam visual prolog, cobalah untuk menjalankan goal dengan menekan ctrl+G
Section dasar Visual Prolog
Secara umum, program Visual Prolog terdiri dari empat section dasar, yaitu section CLAUSES yaitu section yang paling penting pada program Visual prolog yaitu tempay meletakkan Fakta dan Aturan, section PREDICATES yaitu tempat untuk mendeklarasikan predikat , section DOMAINS bermanfaat untuk memberikan nama yang berarti untuk domain, dan juga digunakan untuk mendeklarasikan struktur data yang tidak didefinisikan standar domain, dan section GOAL yaitu merupakan body sebuah aturan.
Section Program lainnya
Ada beberapa section lainnya yang digunakan di Visual Prolog yaitu section FACTS yaitu suatu koleksi dari sekumpulan fakta dan aturan, section CONSTANS yaitu digunakan di program Visual prolog yang sebelumnya harus dideklarasikan terlebih dahulu , dan section GLOBAL digunakan untuk mendeklarasikan beberapa domain, predikat, clausa menjadi global.
Compiler Directives
Visual Prolog mendukung compiler directives yang dapat ditambahkan ke badan program untuk memberitahukan ke komputer bagaiman secara spesifik memperlakukan kode=kode waktu di- compile.
Aritas Jamak (multiple arity)
Aritas (arity) suatu predikat adalah jumlah argumen yang ada pada predikat dengan nama yang sama namun dengan aritas yang berbeda.
Sintak Aturan (Rule Syntax)
Rule pada Prolog adalah ketika kebenaran sebuah fakta tergantung pada kesuksesan (kebenaran0 dari satu atau lebih fakta yang lain.
Konversi Tipe Otomatis (Automatic Type Conversions)
Ketika Visual Prolog mencocokkan 2 variabel, keduanya tidak selalu berasal ari domain yang sama. Juga kadang variabe diikat (bound) menjadi konstan dari domain lain.
Thanks ya! postinganya bermanfaat, pas lagi belajar prolog ni
BalasHapussamasama yaa :)
BalasHapusseneng kalo bermanfaat :D