Logtalk

Скриншот программы:
Logtalk
Детали программы:
Версия: 3.38 обновление
Дата загрузки: 4 May 20
Разработчик: Logtalk
Тип распространения: Бесплатная
Популярность: 25
Размер: 20008 Kb

Rating: 4.0/5 (Total Votes: 4)


        Logtalk - это объектно-ориентированный язык логического программирования, который может использовать большинство реализаций Prolog в качестве внутреннего компилятора. В качестве языка многопарадигмы Logtalk включает поддержку как прототипов, так и классов, протоколов (интерфейсов), программирование на основе компонентов с использованием композиции на основе категорий, программирование на основе событий и многопоточное программирование высокого уровня.
    

Что нового в этой версии:

* УЛУЧШЕНО: избегайте ложных отсутствующих предупреждений `meta_predicate / 1`, когда фактический мета-вызов не передает переменные с .


* УЛУЧШЕНО: Разрешить использование лямбда-выражений в правилах грамматики, не требуя обертки `call // 1`.


* FIXED: ошибка оптимизации при компиляции мета-аргумента замыкания, когда конечная цель - вызов встроенного предиката Prolog из-за вложения определения пользовательского предиката.


* FIXED: ошибка оптимизации при компиляции мета-аргумента замыкания, когда результирующая цель - вызов конструктора управления Prolog `: / 2`.

Что нового в версия 3.19:

* ADDED: поддержка определения дополнительных встроенных предикатов Prolog для lint
проверки целей, которые всегда верны или ложны для файлов адаптера, используя
предикат крюка `'$ lgt_candidate_tautology_or_falsehood_goal_hook' / 1`.


* ADDED: свойство объекта `module` для объектов, которые являются результатом компиляции
модулей Prolog.


* ADDED: ошибка удобства при создании встроенных методов `syntax_error / 1` и
`System_error / 0`. Эти методы вызывают стандартные условия исключения `error / 2`
и эквивалентны последовательности вызовов «context / 1» и «throw / 1`».


* REMOVED: поддержка устаревших Logtalk 2.x `calls / 1`,` uses / 1` и
`псевдонимы / 3`.


* REMOVED: поддержка устаревшей конструкции Logtalk 2.x `: / 1`.


* REMOVED: поддержка устаревших Logtalk 2.x `unknown`,` singleletons`,
`tmpdir` и флаги компилятора` version`.

Что нового в версии 3.14:

NEW: поддержка переменных _параметра_, альтернатива
`parameter / 2` и` this / 1` встроенные методы для доступа к параметрам сущности.
Переменные параметров - это переменные, используемые в идентификаторе параметрического объекта
которые начинаются и заканчиваются символом подчеркивания (`_VariableName_`). Любое событие
переменной параметра в предложении сущности неявно унифицирована с
параметр сущности. Это позволяет добавлять, переупорядочивать параметры сущности или
удалены без каких-либо изменений в предложениях, которые относятся к ним.
Переменные параметров поддерживаются только для параметрических объектов, определенных в
исходные файлы.

Что нового в версии 3.13:

NEW: поддержка компилятора для обнаружения вызовов в локальные статические предикаты без соответствующих предложений (иначе тривиальные ошибки ).

Что нового в версии 3.11.1:

* УЛУЧШЕНО: сообщения о компиляторе и сообщения об ошибках, чтобы сделать их более равномерными, чтобы облегчить разбор редакторами и IDE и избежать печати потенциально крупных терминов.


* УЛУЧШЕНО: компилятор больше не требует вызовов в базу данных и предикатов отражения, где первый аргумент является термином, квалифицированным модулем, который должен быть обернут с помощью конструкции управления байпасом компилятора `{} / 1`.


* УЛУЧШЕНО: проверка ошибок компилятора для запросов предиката базы данных и отражения, где первый аргумент является термином, соответствующим модулю.


* УЛУЧШЕНО: Минимизируйте количество перезагрузок файлов, вызванных вызовами предикатов `logtalk_make / 0-1`.


* FIXED: случай, когда предикаты `logtalk_make / 0-1` не смогут перезагрузить файл, компиляция которого сгенерировала ошибку компилятора.

Что нового в версии 3.11:

* CHANGED: встроенный предикат `current_event / 5`, чтобы всегда создавать первый аргумент при вызове с его unbound.


* ADDED: поддержка переопределения каталога нуля по умолчанию путем определения
псевдоним библиотеки `scratch_directory` в файле инициализации Prolog-файла
(предполагается, что он загружен до загрузки Logtalk). После обсуждения с
Douglas R. Miles о поддержке установки Logtalk в каталоге только для чтения
и одновременное выполнение нескольких экземпляров Logtalk без конфликтов.


* ADDED: встроенный метод контекстного выполнения `context / 1` для обеспечения доступа
к контексту выполнения предикатного вызова. В основном используется для предоставления по умолчанию
контекст ошибки, когда аргументы предиката проверки типов.


* ADDED: поддержка печати сообщений типа `debug` и` debug (_) `. Эти
сообщения отображаются только по умолчанию, когда включен флаг `debug`.


* ADDED: свойство `включает (File)` в `logtalk :: loaded_file_property / 2`
предикат, позволяющий перечислять, путем обратного отслеживания, все файлы, включенные
загруженный файл (с помощью директив `include / 1`).

Что нового в версии 3.10.7:

* RENAMED: `logtalk_make / 1` target` missing` для `check`.


* ADDED: поддержка расширения объектов `logtalk_make / 1` с определенными пользователем
действия с использованием нового предиката multifile `logtalk_make_target_action / 1`.


* ADDED: компилятор проверяет личность на цели тавтологии и лжи.
В настоящее время проверяются вызовы для объединения, сравнения и типа пролога.
тестирование встроенных предикатов. Предлагается Барри Эвансом.

Что нового в версии 3.10.5:

* FIXED: регрессия, представленная в выпуске 3.10.2 при выполнении метавызовов контекстные встроенные методы.

* FIXED: Ошибка компилятора, возникающая в результате применения проверок переносимости для вызовов встроенных предикатов и функций Prolog, найденных в вспомогательных предложениях (обычно генерируемых механизмом расширения термина).

Что нового в версии 3.10.3:

* УЛУЧШЕНО: Упрощенный код, сгенерированный для предикатов множества.


* FIXED: регрессия в предыдущем выпуске в сборнике мультифила
предикатные предложения, которые вызывают вызовы в конструкциях управления `:: / 1-2`.

Что нового в версии 3.09.1:

* ADDED: поддержка объектов `number_of_rules / 1` и` number_of_user_rules / 1`
и свойства категории.


* ДОБАВЛЕНО: поддержка свойства «целое число_1_рулей / 1».


* ADDED: обнаружение директив meta_predicate / 1, которые неправильно указывают цель
мета-аргумент, который фактически является закрытием, переданным мета-предикату `call / 2-N`
звонки. Спасибо Аруну Маджумдару за отчет.


* ADDED: обнаружение недостающих предикатных ограничений в присутствии
`mode / 2`.

Что нового в версии 3.09.0:

* CHANGED: файлы настроек теперь также просматриваются у пользователя домашний каталог
если они не найдены в каталоге автозагрузки или в каталоге пользователя Logtalk.
Установка флага `settings_file` в` ограничение` теперь ограничивает поиск
файл настроек в каталог пользователя Logtalk и домашний каталог пользователя.
Эти изменения полезны, когда команда совместно использует установку Logtalk с обоими
переменные среды LOGTALKHOME и LOGTALKUSER, указывающие на
тот же каталог. Спасибо Барри Эвансу за предложение.

Что нового в версии 3.08.0:

* CHANGED: убедитесь, что в сообщениях об ошибках и предупреждениях компилятора информация о файле и строке всегда является последней строкой для указанной проблемы.

Что нового в версии 3.07.0:

* ADDED: флаг unicode для чтения только для чтения компилятора Prolog
поддержка стандарта Unicode.


* ADDED: поддержка создания `++` (ground) и `--` (несвязанного) аргумента
режимы (объявленные как операторы префикса) для использования с предикатом `mode / 2`
директивы.


* ADDED: поддержка спецификации детерминизма `one_or_error` в` mode / 2`
предикатные директивы. Полезно для документирования предикатов проверки типов.


* УЛУЧШЕНО: обнаружение пытается вызвать экзистенциально определенные цели за пределами
объем вызовов `bagof / 3` и` setof / 3`.


* FIXED: при компиляции `uses / 2` директив не создавайте предложение привязки для
использование времени исполнения для встроенных предикатов в `user`, когда псевдоним не определяется.


* FIXED: при распространении сбоя компиляции для файла в его родительские файлы,
убедитесь, что предки файлов будут перезагружены, начиная с верхнего предка
по механизму изготовления.


* FIXED: избегайте избыточных перезагрузок файлов при вызове `logtalk_make / 0` или
`logtalk_make / 1` с целевым` all`.


* FIXED: обнаружение недостающих предикатов в вызовах `^^ / 1` при вызове
`logtalk_make / 1` с целевым` missing`.

* FIXED: ошибка в API отражения, где некоторые предикатные перекрестные ссылки
информация не была записана. Спасибо Эдварду Шварцу за отчет об ошибке.

Что нового в версии 3.06.2:

В этом выпуске продолжается работа по улучшению инструментов разработчика в спонсорство Kyndi, Inc. Оно включает новую версию инструмента обертки для портирования простых приложений Prolog и улучшений и исправлений для инструментов lgtunit и диаграмм. Он также включает новые модульные тесты, исправления компилятора и документации и обновление совместимости для Lean Prolog.

Что нового в версии 3.04.1:

* FIXED: ошибка компилятора, в которой предикат, который расшифровывается по срокам, вызывая метод compile_aux_clauses / 1, может быть ошибочно представлен как несогласованный.


* FIXED: Вызов встроенного предиката `threaded_notify / 1` из псевдообъекта` user` не требует связанного аргумента в соответствии с документацией.


* FIXED: вызывает детекционистские аргументы свойств `object_property / 2` и category_property / 2` с аргументами` number_of_clauses / 1` или `number_of_user_clauses / 1`.

Что такое новый в версии 3.03.0:

* ADDED: поддержка нового объекта `logtalk_make / 1`,` missing`, для отображения отсутствующих объектов и предикатов. Также доступен с помощью ярлыка `{?}`.

* ADDED: поддержка нового `logtalk_make / 1` target,` circle`, для отображения круговых ссылок (с учетом целей отправки сообщений) между парами и трио объектов. Также доступен с помощью ярлыка `{@}`.

* УЛУЧШЕНО: добавьте хэш каталога в промежуточные имена файлов Prolog, чтобы избежать столкновений имен файлов при сборе всех промежуточных файлов в том же каталоге для встраивания. В настоящее время требуется ECLiPSe, GNU
Prolog, JIProlog, Quintus Prolog, SICStus Prolog, SWI-Prolog, XSB или YAP в качестве базового компилятора.

* FIXED: ошибка оптимизации мета-предикатного вызова, когда мета-аргумент является либо скомпилированным закрытием, либо закрытием для цели, вызванной в контексте
`user` псевдо-объект. Также примените более строгую проверку ошибок к мета-аргументам закрытия.

* FIXED: Довольно печать параметрических объектов и идентификаторов параметрической категории в сообщениях об ошибках и предупреждения.

Что нового в версии 3.02.2:

* FIXED: ошибка проверки ошибок в лямбда-выражениях с использованием `true / 0` в качестве лямбда
Цель. Спасибо Борису Васильеву за сообщение об ошибке.


* FIXED: предикат `logtalk_make / 1` будет успешным (после печати предупреждения
сообщение) при вызове с неконкретизируемым или недействительным аргументом вместо
терпит неудачу. к
сгенерированные промежуточные файлы Prolog с использованием предиката многофайлов для лучшего
опыт внедрения. Примечательно, что упрощается инкрементное внедрение.


* УЛУЧШЕНО: предикаты make теперь также перезагружают родительские файлы файлов с помощью
ошибки компиляции или загрузки. Это гарантирует, что, когда неисправный файл прерывает
компиляция всех файлов в файле загрузчика, файлы, перечисленные после неисправности
файл будет скомпилирован, когда неисправный файл будет исправлен и предикаты make будут
.

Что нового в версии 3.02.1:

* УЛУЧШЕНО: Записи таблицы runtime для загруженных файлов теперь добавляются к сгенерированным промежуточным файлам Prolog с использованием префикса многофайлов для лучшего внедрения. Примечательно, что упрощается инкрементное внедрение.
 * УЛУЧШЕНО: предикаты make теперь также перезагружают родительские файлы файлов с ошибками компиляции или загрузки. Это гарантирует, что, когда ошибочный файл прервет компиляцию всех файлов в файле загрузчика, файлы, перечисленные после неисправного файла, будут скомпилированы, когда поврежденный файл будет исправлен и будут вызываться предикаты make.

Что нового в версии 3.01.2:

Этот выпуск завершает реализацию статической привязки; добавляет поддержку использования имен файлов as-is с компиляцией и загрузкой предикатов; исправляет ошибки компилятора; содержит обновления документации; улучшает инструменты для отладки, тестирования и документирования; добавляет новый набор модульных тестов для проверки соответствия Prolog официальным и фактическим стандартам; обновляет синтаксическую раскраску для всех поддерживаемых текстовых редакторов и подсветки синтаксиса; и включает обновления совместимости для ECLiPSe, JIProlog и YAP.

Требования

Совместимый компилятор Prolog.

Похожие программы

Pace InterLok
Pace InterLok

3 Jan 15

SlayFire Reality
SlayFire Reality

3 Jan 15

CVSTrac
CVSTrac

3 Jan 15

Другие программы разработчика Logtalk

Logtalk
Logtalk

3 May 15

Комментарии к Logtalk

Комментарии не найдены
добавить комментарий
Включите картинки!