SWI-Prolog реалізація мови програмування Пролог, яка найчастіше використовується в навчанні, та програмуванні семантичної павутини. Має багато функцій, зокрема бібліотеки для , багатонитевості, модульного тестування, GUI, інтерфейси до Java, ODBC та інші, , вебсервер, SGML, RDF, , інструменти для розробки (включно з IDE з графічним зневаджувачем та профайлером), та вичерпну документацію.
SWI-Prolog працює на платформах Unix, Windows, та Macintosh.
SWI-Prolog перебуває в постійній розробці з 1987. Його основним автором є Jan Wielemaker. Назва SWI успадкована від Sociaal-Wetenschappelijke Informatica ("Соціальна інформатика"), колишня назва групи в Університеті Амстердама, де працював Wielemaker. Назва групи була замінена на HCS ().
Інтерфейс користувача SWI-Prolog запускається командою swipl або prolog
Спочатку він очікує лише запитів, кожен із яких закінчується крапкою. Спроба написати програму спричинить помилку: ?- human(john). ERROR: Undefined procedure: human/1
Тут ?- - привітання системи. Означає що вона очікує запиту.
Програми зберігаються в файлах, і потім передаються інтерпретатору Пролога, за допомогою запиту ?-consult(file). який можна написати скорочено: ?-[file].
Щоб ввести програму прямо з клавіатури, потрібно написати команду ?-consult(user). чи ?-[user]. Тоді все аж до наступного натиснення дописується в базу даних.
XPCE XPCE багатоплатформенний для SWI-Prolog, Lisp та інших динамічно типізованих мов. І хоча XPCE створювався як незалежний від мови, він отримав популярність в основному завдяки Прологу. Розробка інструментарію XPCE почалась теж у 1987 разом з SWI-Prolog.
Підтримує кнопки, меню, слайдери, закладки і інші базові віджети GUI. XPCE доступний на всіх платформах доступних для SWI-Prolog.
PceEmacs PceEmacs вбудований редактор SWI-Prolog. PceEmacs — клон Emacs реалізований мовою Пролог (та XPCE). Підтримує правильні відступи, підсвітку синтаксису, перевірку синтаксису парсером.
JPL JPL — двосторонній інтерфейс між Java та Prolog. Потребує SWI-Prolog та Java SDK , та встановлюється як елемент SWI-Prolog.
Див. також Пролог (мова програмування)
Примітки
Посилання
SWI-Prolog website SWI-Prolog for WinCE XPCE: the SWI-Prolog native GUI library