Strawberry Prolog dihasilkan oleh Institut Matematika dan
Informatika pada Akademi Ilmu Pengetahuan Bulgaria . Versi pertama dirilis pada
tahun 1996. Pemimpin tim Strawberry Dimiter Dobrev. Strawberry Prolog adalah
dialek dari bahasa pemrograman Prolog.
Sintaks-nya adalah sangat dekat dengan ISO-Prolog tetapi
memiliki banyak ekstensi yang bukan bagian dari standar. Gagasan utama dari
Strawberry Prolog adalah sangat mudah digunakan dan itulah sebabnya beberapa
universitas menggunakannya untuk kursus mereka Prolog Strawberry Prolog sedang dikembangkan di
Institut Matematika dan Informatika dan di Fakultas Matematika dan Informatika.
Kompiler Prolog ini merupakan bagian dari proyek AI.
Untuk menggunakan strawberry prolog tidak dilakukan
instalasi. Programmer dapat meng-unduhnya secara gratis di website resminya.
Namun karena penggunaannya yang gratis, pada strawberry prolog ini, game yang
dibuat tidak dapat membentuk sebuah file execute (exe). Jadi program dapat
dijalankan dengan membuka file strawberry prolog (spj) di dalam strawberry
prolog itu sendiri.
Misalkan anda ingin menjalankan game hasil buatan anda di
komputer lain, anda harus menginstal dahulu strawberry prolog tersebut di komputer
yang akan digunakan untuk membuka game buatan anda. Aplikasi pemrograman ini
sebenarnya bukan bersifat free atau gratis tapi anda harus membelinya. Namun
ada juga versi yang gratis tetapi fitur dalam pembuatan programnya akan
dibatasi seperti pembentukan file execute (exe) saat anda selesai membuat game.
Prolog
Prolog adalah bahasa pemrograman logika atau disebut juga
sebagai bahasa non-procedural. Nama Prolog merupakan singkatan dari
“Programming in Logic“. Ide untuk mengembangkan pemrograman dalam logika,
pertama kali dilakukan oleh Robert Kowalski di Edinburgh, Skotlandia pada tahun
1970-an. Berbeda dengan bahasa pemrograman yang lain, yang menggunakan
algoritma konvensionl sebagai teknik pencariannya seperti pada Delphi, Pascal,
Basic, Cobol dan bahasa pemrograman yang sejenisnya, maka prolog menggunakan
teknik pencarian yang di sebut heuristik (heutistic) dengan menggunakan pohon
logika.
Sejarah
Prolog
Ia mengembangkan pemrograman tersebut secara teoritis
yang kemudian dilanjutkan dalam demonstrasi eksperimen oleh Maarten van Emden,
juga dari Edinburgh. Kemudian Alain Colmerauer dari Marseilles, Perancis
membuat implementasinya. Bahasa ini pertama kali dikembangkan oleh Alain
Colmerauer dan P. Roussel di Universitas Marseilles Perancis pada tahun 1972.
Selama tahun 70-an, Prolog menjadi populer di Eropa untuk aplikasi artificial
intelegence. Sedangkan di Amerika Serikat, para peneliti juga mengembangkan
bahasa lain untuk aplikasi yang sama yaitu LISP. LISP mempunyai kelebihan
dibandingkan Prolog, tetapi LISP lebih sulit dipelajari. Pada mulanya, Prolog
adalah bahasa yang sangat murni yang didasarkan pada keindahan logika. Sejak
ditemukannya pada tahun 1970-an oleh ketiga orang di atas, Prolog berkembang
dengan lambat dan hanya digunakan oleh para peneliti dari
universitas-universitas terkenal karena hanya merekalah yang dapat mengerti
arti dari pentingnya Prolog. Dalam masa pengembangannya, para peneliti banyak
menemukan kebutuhan-kebutuhan baru yang perlu ditambahkan di Prolog.
Awalnya Prolog dan LISP sangat lambat dalam eksekusi
program dan memakan memori yang besar sehingga hanya kalangan tertentu yang
menggunakannya. Dengan adanya compiler prolog, kecepatan eksekusi program dapat
ditingkatkan, namun Prolog masih dipandang sebagai bahasa yang terbatas (hanya
digunakan di kalangan perguruan tinggi dan riset). Pada awal tahun 1980-an,
dunia industri mulai menyadari kelebihan-kelebihan yang dimiliki oleh Prolog
dibandingkan dengan bahasa konvensional lainnya. Dengan terlibatnya dunia
industri, maka timbul tuntutan-tuntutan baru, misalnya tuntutan akan eksekusi
waktu yang lebih cepat, kebutuhan memori yang lebih kecil dan kebutuhan praktis
lainnya. Namun hal ini justru menimbulkan 2 kelompok yang mempunyai filosofi
yang berbeda. Di satu pihak, mereka menganggap bahwa Prolog adalah bahasa
penelitian sehingga mereka menginginkan banyak hal tercakup dalam Prolog
sehingga Prolog dapat digunakan secara luwes untuk berbagai keperluan
penelitian. Di pihak lain, mereka yakin bahwa Prolog seharusnya dapat menjadi
bahasa yang berguna untuk mengembangkan berbagai macam aplikasi yang bukan
penelitian. Pandangan umum Prolog hanya digunakan di kalangan perguruan tinggi
dan riset tiba-tiba berubah di tahun 1981 pada Konferensi International I dalam
sistem Generasi Kelima di Tokyo, Jepang. Jepang yang saat itu mengalami
kesulitan bersaing dalam pemasaran komputer dengan Amerika Serikat,
mencanangkan suatu rencana untuk mengembangkan teknologi perangkat keras dan
perangkat lunak komputer generasi kelima untuk tahun 1990-an. Dan bahasa yang
dipilih adalah Prolog. Sejak saat itu, banyak orang mulai menaruh minat pada
Prolog dan pengembangan versi Prolog yang mempunyai kecepatan dan kemampuan
yang lebih tinggi, lebih murah dan lebih mudah digunakan, baik untuk komputer
mainframe maupun komputer pribadi sehingga Prolog menjadi alat yang sangat
penting dalam program aplikasi kecerdasan buatan (artificial intelegence) dan
pengembangan sistem pakar (expert system).
Prolog merupakan pemrograman berupa Object Oriented
Language atau declarative Language, dimana prolog tidak terdapat prosedur,
tetapi hanya kumpulan data-data objek (fakta) yang akan diolah dan relasi antar
objek tersebut yang membentuk suatu aturan. Aturan-aturan ini disebut heuristik
dan diperlukan dalam mencari suatu jawaban. Dengan kata lain program dalam
Prolog adalah sebuah database. Pemrogram menentukan goal (tujuan) dan komputer
akan menentukan bagaimana cara mencapai tujuan tersebut serta mencari
jawabannya menggunakan “formal reasoning” yang membuktikan cocok tidaknya
tujuan dengan data-data yang telah ada dan relasinya. Prolog memecahkan masalah
seperti yang dilakukan oleh pikiran manusia. Dengan demikian, Prolog sangat
ideal untuk memecahkan masalah yang tidak terstruktur dan prosedur pemecahannya
tidak diketahui, khususnya untuk memecahkan masalah non numerik.
Perbedaan Prolog dengan Bahasa Lain
Bisa dibilang lebih banyak bahasa pemrograman saat ini
yang memiliki sistem Procedural Language, yang penggunaannya menggunakan
algoritma terlebih dahulu dalam membuat suatu penyelesaian. Prosedur dapat
dibuat secara berulang sampai ditemukan solusi yang diinginkan, yang sudah
barang tentu dikendalikan oleh si pembuat program. Inti dari prosedural itu
sendiri adalah memberikan sederetan fungsi atau perintah, sehingga komputer
dapat menjalankan pemikiran secara otomatis untuk mendapatkan solusi.
Prolog disebut sebagai object oriented language atau
declarative language. Dalam prolog tidak terdapat prosedur, tapi hanya tampilan
data-data object (fakta) yang akan diolah dengan relasi antar object tersebut
yang membentuk suatu aturan. Aturan-aturan ini disebut HEURISTIK dan diperlukan
dalam mencari suatu jawaban, dengan kata lain, prolog dalam prolog adalah
database.
Formal Reasoning digunakan untuk mencapai goal atau tujuan, dengan cara menentukan cocok
tidaknya tujuan dengan data-data yang sudah ada beserta relasinya. Dengan kata
lain prolog bekerja seperti yang dilakukan oleh pemikiran manusia, prolog cocok
digunakan untuk memecahkan masalah yang tidak diketahui prosedur pemecahan nya
atau dengan kata lain tidak terstruktur dan non numerik.
Bahasa Pemrograman Prolog
Object oriented languange atau declarative languange.
Tidak terdapat prosedur, tetapi hanya kumpulan data-data objek (fakta) yang
akan diolah, dan relasi antar objek tersebut membentuk aturan yang diperlukan
untuk mencari suatu jawaban
Programmer menentukan tujuan (goal), dan komputer
menentukan bagaimana cara mencapai tujuan tersebut serta mencari jawabannya.
Dilakukan pembuktian terhadap cocok-tidaknya tujuan dengan
data-data yang telah ada dan relasinya.
Prolog ideal untuk memecahkan masalah yang tidak
terstruktur, dan prosedur pemecahannya tidak diketahui, khususnya untuk
memecahkan masalah non numerik.
Prolog bekerja seperti pikiran manusia, proses pemecahan
masalah bergerak di dalam ruang masalah menuju suatu tujuan (jawaban tertentu).
Aplikasi
Prolog
Sistem Pakar
(Expert System), Program menggunakan teknik pengambilan kesimpulan dari
data-data yang didapat, layaknya seorang ahli.
Pengolahan Bahasa Alami (Natural Languange Processing),
Program dibuat agar pemakai dapat berkomunikasi dengan komputer dalam bahasa
manusia sehari-hari, layaknya penterjemah.
Robotik, Prolog digunakan untuk mengolah data masukanyang
berasal dari sensor dan mengambil keputusan untuk menentukan gerakan yang harus
dilakukan.
Pengenalan Pola (Pattern Recognition), Banyak digunakan
dalam image processing, dimana komputer dapat membedakan suatu objek dengan
objek yang lain.
Belajar (Learning), Program belajar dari kesalahan yang
pernah dilakukan, dari pengamataqn atau dari hal-hal yang pernah diminta untuk
dilakukan.
Strawberry
Prolog
Strawberry Prolog dihasilkan oleh Institut Matematika dan
Informatikapada Akademi Ilmu Pengetahuan Bulgaria. Versi pertama dirilis pada
tahun 1996. Pemimpin tim Strawberry Dimiter Dobrev. Strawberry Prolog adalah
dialek dari bahasa pemrograman Prolog. Sintaks-nya adalah sangat dekat dengan
ISO-Prolog tetapi memiliki banyak ekstensi yang bukan bagian dari standar.
Gagasan utama dari Strawberry Prolog adalah sangat mudah digunakan dan itulah
sebabnya beberapa universitas menggunakannya untuk kursus mereka Prolog
Strawberry Prolog sedang dikembangkan di Institut Matematika dan Informatika
dan di Fakultas Matematika dan Informatika. Kompiler Prolog ini merupakan
bagian dari proyek AI.