Lompat ke isi

Visual Prolog: Perbedaan antara revisi

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Konten dihapus Konten ditambahkan
HsfBot (bicara | kontrib)
k Bot: +{{Authority control}}
HsfBot (bicara | kontrib)
Baris 13: Baris 13:
Berikut ini merupakan contoh program [[Menara Hanoi]] yang diimplementasikan menggunakan bahasa pemrograman prolog.
Berikut ini merupakan contoh program [[Menara Hanoi]] yang diimplementasikan menggunakan bahasa pemrograman prolog.


<source lang="VisualProlog">class hanoi
<syntaxhighlight lang="VisualProlog">class hanoi
predicates
predicates
hanoi: (unsigned N).
hanoi: (unsigned N).
Baris 37: Baris 37:
goal
goal
console::init(),
console::init(),
hanoi::hanoi(4).</source>
hanoi::hanoi(4).</syntaxhighlight>





Revisi per 22 Juli 2021 02.30

Visual Prolog sebelumnya dikenal sebagai PDC Prolog dan Turbo Prolog merupakan bahasa pemrograman prolog yang berorientasi objek. Sebelumnya, Turbo Prolog dipasarkan oleh Borland, tetapi 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 CGCI. Copyright C Erlando OS. All rights reserved. Windows, dan akses database melalui ODBC. Visual Prolog merupakan bahasa pemrograman yang dikompilasi, dan bukan diinterpretasikan oleh sebuah interpreter.

Sejarah versi

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

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

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

Lihat pula

Referensi

Pranala luar