сокращенная запись для чтения программ из файлов. Файлы, из которых предстоит чтение, просто помещаются в список и этот список используется в качестве цели. Например:
?- [файл1, файл2, файл3].
Это в точности эквивалентно следующим трем целям:
?- соnsult( файл1), соnsult( файл2), соnsult( файл3).
Встроенный предикат reconsult аналогичен consult. Цель
?- reconsult( F).
даст тот же эффект, что и consult( F) с одним исключением. Если в F есть предложения, касающиеся отношений, которые уже были определены ранее, старые определения заменяются на новые из F. Разница между consult и reconsult в том, что consult всегда добавляет новые предложения, в то время как reconsult переопределяет ранее введенные определения. Однако reconsult не произведет никакого эффекта на те отношения, о которых в F ничего не сказано.
Следует еще раз заметить, что детали 'консультирования' с файлами зависят от конкретной реализации Пролога. Это замечание касается и большинства остальных встроенных процедур.
Резюме
Ввод и вывод (отличный от связанного с вопросами к программе) осуществляется посредством встроенных процедур. В данной главе описан простой и практичный набор таких процедур, имеющихся во многих реализациях Пролога.
Файлы являются последовательными. Существуют
Переключение между потоками осуществляется с помощью процедур:
sее( Файл) Файл становится текущим входным потоком
tell( Файл) Файл становится текущим выходным потоком
seen закрывается текущий входной поток
told закрывается текущий выходной поток
Файлы читаются и записываются двумя способами:
как последовательности символов
как последовательности термов
Встроенные процедуры для чтения и записи символов и термов таковы:
rеad( Терм)
вводит следующий терм
write( Терм)
выводит Терм
put( КодСимвола)
выводит символ с заданным ASCII - кодом
get0( КодСимвола)
вводит следующий символ
gеt( КодСимвола)
вводит ближайший следующий 'печатаемый' символ
Две процедуры облегчают форматирование:
nl начинает новую строку
tab( N) выводит N пробелов
Процедура nаmе( Атом, СписокКодов) осуществляет синтез и декомпозицию атомов. СписокКодов - список ASCII кодов символов, образующих Атом.
Назад | Содержание | Вперёд