Visual Prolog

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Lompat ke: navigasi, cari

Visual Prolog sebelumnya dikenal sebagai PDC Prolog dan Turbo Prolog merupakan bahasa pemrograman prolog yang berorientasi obyek. Sebelumnya, Turbo Prolog dipasarkan oleh Borland, namun saat ini produk tersebut dikembangkan serta dipasarkan oleh perusahaan asal Denmark, Prolog Development Center, yang sejatinya merupakan perusahaan yang mengembangkan Turbo Prolog. Visual Prolog dapat digunakan untuk membuat aplikasi berbasis grafis untuk sistem operasi Microsoft Windows, aplikasi konsol, berkas pustaka .dll, dan program berbasis CGI. Program yang dibuat dengan Visual Prolog juga dapat memanfaatkan komponen COM milik Windows, dan akses database melalui ODBC. Visual Prolog merupakan bahasa pemrograman yang dikompilasi, dan bukan diinterpretasikan oleh sebuah interpreter.

Sejarah versi[sunting | sunting sumber]

Sejak versi 6.0 bahasa prolog telah mendukung secara penuh pemrograman berorientasi obyek.

Versi 7.0 membawa serta fitur polimorfisme parametrik.

Versi 7.2 memperkenalkan predikat anonim, serta namespace.

Versi 7.3 memperkenalkan kelas generik serta interface.

Contoh menara hanoi[sunting | sunting sumber]

Berikut ini merupakan contoh program Menara Hanoi yang diimplementasikan menggunakan bahasa pemrograman prolog.

class hanoi
   predicates 
       hanoi : (unsigned N). 
end class hanoi
 
implement hanoi
   domains 
       pole = string. 
 
   clauses 
       hanoi(N) :- move(N, "left", "centre", "right"). 
 
   class predicates 
       move : (unsigned N, pole A, pole B, pole C). 
   clauses 
       move(0, _, _, _) :- !. 
       move(N, A, B, C) :- 
           move(N-1, A, C, B), 
           stdio::writef("move a disc from % pole to the % pole\n", A, C), 
           move(N-1, B, A, C). 
end implement hanoi
 
goal
   console::init(), 
   hanoi::hanoi(4).


Bacaan lanjutan[sunting | sunting sumber]

Lihat pula[sunting | sunting sumber]

References[sunting | sunting sumber]

Pranala luar[sunting | sunting sumber]