Реализована оболочка на языке Python для редактирования базы данных генеалогического древа в командной строке. Используется формат команды “Субъект Предикат Объект”.
Субъект стоит первым, второй и последующие аргументы - объекты.
Предикат - действие, правило.
Вывод - табличка знаний, соответствующих запросу.
Также предусмотрена возможность отмены последнего введенного знания.
usage: main.py [-h] [--database DATABASE] [--program PROGRAM]
PROGRAM - файл с программой на языке Пролог,
который будет выполнене перед стартом основного цикла интерпретации
DATABASE - файл с базой знаний и кастомными командами,
который будет выполнен после PROGRAM, но перед основным циклом интерпретации
* если DATABASE содержит команду exit, интерпретация закончится на ней,
а последующие комады файла проигнорируются, основной цикл не начнется
<subject> <predicate> [objects] | <?-> <query> | table | back | exit
> back - удаляет из базы знаний (с помощью retract)
последний добавленный из интерпретатора предикат
> table - выводит всю базу знаний в виде отформатированной таблицы
> exit - завершает главный цикл интерпретации
> <subject> <predicate> [objects] - задание нового факта
?- <query> - выводит отформатированную табами таблицу знаний, соответсвующий запросу