SWI-Prolog - SWI-Prolog
Эта статья может чрезмерно полагаться на источники слишком тесно связан с предметом, потенциально препятствуя публикации статьи проверяемый и нейтральный.Июнь 2014 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Оригинальный автор (ы) | Ян Вилемакер |
---|---|
Разработчики) | Ян Вилемакер, Аньо Анжеверден и др. |
изначальный выпуск | 1987 |
Стабильный выпуск | 8.2.3 / 23 ноября 2020 г. |
Предварительный выпуск | 8.3.15 / 14 декабря 2020 |
Написано в | C, Пролог |
Операционная система | Кроссплатформенность |
Доступно в | английский |
Тип | Логическое программирование |
Лицензия | Упрощенный BSD, LGPL до версии 7.3.33 |
Интернет сайт | swi-prolog |
SWI-Prolog это свободный реализация язык программирования Пролог, обычно используется для обучения и семантическая сеть Приложения. Обладает богатым набором функций, библиотеки за программирование логики ограничений, многопоточность, модульное тестирование, GUI, взаимодействуя с Ява, ODBC и другие, грамотное программирование, а веб сервер, SGML, RDF, RDFS, инструменты разработчика (включая IDE с графическим интерфейсом отладчик и графический интерфейс профайлер ) и обширную документацию.
SWI-Prolog работает на Unix, Windows, Macintosh и Linux платформы.
SWI-Prolog непрерывно развивается с 1987 года. Его главный автор - Ян Вилемакер.
Название SWI происходит от Sociaal-Wetenschappelijke Informatica («Социальная информатика»), прежнее название группы в Амстердамский университет, где работает Wielemaker. Название этой группы было изменено на HCS (Human-Computer Studies).
Веб-фреймворк
SWI-Prolog устанавливается с веб-фреймворк на основе грамматики с определенными предложениями.[1]
Распределенных вычислений
Запросы SWI-Prolog могут быть распределены по нескольким серверам и веб-страницам через систему Pengines.[2]
XPCE
XPCE - это независимая платформа объектно-ориентированный[3] Набор инструментов GUI для SWI-Prolog, Лисп и другие интерактивные и динамически типизированные языки. Хотя XPCE был разработан, чтобы быть независимым от языка, он получил популярность в основном с Prolog. Разработка графического инструментария XPCE началась в 1987 году вместе с SWI-Prolog.
Он поддерживает кнопки, меню, ползунки, вкладки и другие основные Виджеты GUI. XPCE доступен для всех платформ, поддерживаемых SWI-Prolog.
PceEmacs
PceEmacs это встроенный редактор SWI-Prolog. PceEmacs является Emacs clone реализован в Prolog (и XPCE). Он поддерживает правильные отступ, подсветка синтаксиса, полная проверка синтаксиса путем вызова SWI-Prolog парсер, предупреждение для одиночные переменные и поиск определений предикатов на основе исходной информации из базы данных Prolog.
Интерфейс между Java и Prolog (JPL)
JPL - это двунаправленный интерфейс между Java и Prolog.[4] Требуется как SWI-Prolog, так и Java SDK.[5] Устанавливается как часть SWI-Prolog.
Библиотеки программирования логических ограничений (CLP)
Функциональность программирования логических ограничений появилась на довольно позднем этапе существования SWI-Prolog, поскольку в нем отсутствовала базовая поддержка.[6]. Это изменилось в начале 2004 года, когда в язык были добавлены переменные с атрибутами. Библиотека Leuven CHR была тогда первой библиотекой CLP, перенесенной на SWI-Prolog. Мы упоминаем библиотеку INCLP (R) SWI-Prolog (Де Конинк и др., 2006), которая предоставляет нелинейные ограничения для вещественных чисел и была реализована поверх CHR. Позже появился перенос библиотеки CLP (QR) Кристиана Хольцбаура и решателя CLP (FD) конечной области. Наконец, был добавлен логический решатель CLP (B)[7].
Смотрите также
Рекомендации
- ^ Вилемакер, Ян; Хуанг, Чжишэн; ван дер Мей, Лоуренс (2008). «SWI-Prolog и Интернет» (PDF). Теория и практика логического программирования. 8 (3): 363–392. Дои:10.1017 / S1471068407003237.
- ^ Вилемакер, Ян; Лагер, Торбьорн (14 мая 2014 г.). «Pengines: простое программирование WebLogic». Теория и практика логического программирования. 14 (специальный выпуск 4–5): 539–552. arXiv:1405.3953. Дои:10.1017 / S1471068414000192.
- ^ Программирование в XPCE / Prolog.
- ^ Пол Синглтон, Фред Душин, Ян Вилемейкер (февраль 2004 г.). «JPL: двунаправленный интерфейс Prolog / Java». SWI-Prolog.CS1 maint: использует параметр авторов (связь)
- ^ Пол Синглтон (февраль 2004 г.). «Установка JPL 3.x». SWI-Prolog.
- ^ Ян Вилемакер, Том Шрайверс, Маркус Триска, Торбьорн Лагер: SWI-Prolog. TPLP 12 (1–2): 67–96 (2012).
- ^ Маркус Триска: решатель логических ограничений SWI-Prolog (описание системы). ФЛОПС 2016: 45–61.