"Спасительный" аналог Turbo Prolog в SWI-Prolog

Есть ли какой-нибудь аналог SWI для функции сохранения Turbo, которая сохраняет в файл факты, предварительно загруженные через consult, а затем добавленные через assert?

1 ответ

Решение

Я не нашел никаких подобных функциям в руководстве. Можно попробовать следующую замену:

% Save whole DB into file
save(FileName) :-
  open(FileName, update, F),
  with_output_to(S, listing),
  close(F).

Или даже короче

save(FileName) :-
  tell(FileName), listing, told.
Другие вопросы по тегам