나는 프롤로그를 처음 사용하고 있으며, 지금까지 파일에 술어를 정의하고이를 사용하기 위해 인터프리터를 실행하는 방법을 배웠다. 그러나 앞뒤로 전환 할 필요가 없도록? 프롬프트에서 술어를 정의하는 방법이 있는지 알고 싶습니다.프롤로그에 술어를 정의하는 방법
내가 지금 뭐하는 거지 방법이
파일 defs.pl 같다 : 방법을 정의하는 어쩌면 내가 의미
?- consult('defs.pl').
% defs.pl compiled 0.00 sec, 122 bytes
true.
?- adjacent(1,2).
true.
편집 : 프롤로그 인터프리터
adjacent(1,2).
adjacent(1,3).
'사실'나는 잘 모르겠다. 당신이 파일에 정의 술어와 결합하려고하면이 작동하지 않습니다, 그런데 :
?- assert(adjacent(1,4)).
true
편집 :
나는 그것이 아마도 그들이 설계 한 것에 동의하지만 신속하게 프롤로그를 테스트하고 학습하는 데 사용할 수 있기 때문에 문제를 보지 못합니다. 오버 헤드는 걱정할 필요가 없습니다. 당신의 솔루션은 더 깨끗하다고 생각하지만, 추가 할 때 이미 정의한 모든 술어를 다시 입력해야합니다. – catchmeifyoutry