, 나는 다음과 같은 술어 가지고있는 경우 :원자가 패턴으로 시작하는지 알아 보는 방법? 예를 들어
father('jim', 'Boby')
father('rob', 'bob')
내가 이름을 '보'로 시작되는 아버지를 가지고있는 사람을 알고 싶습니다를?
, 나는 다음과 같은 술어 가지고있는 경우 :원자가 패턴으로 시작하는지 알아 보는 방법? 예를 들어
father('jim', 'Boby')
father('rob', 'bob')
내가 이름을 '보'로 시작되는 아버지를 가지고있는 사람을 알고 싶습니다를?
ISO 다른 옵션 sub_atom/5
이다
atom_concat/3
비교
sub_atom(Atom, Before, Length, After, Sub_atom)
는
?- sub_atom(bob, 0, _, _, bo).
true.
이 접미어를 나타내는 불필요한 원자의 생성을 방지한다.
ISO Prolog 표준 기본 제공 술어 atom_concat/3
만 사용하면됩니다.
사용자 수준에서 예, sub_atom/5를 사용하면 불필요한 원자를 피할 수 있습니다. 구현 레벨에서 Prolog 컴파일러에 따라 sub_atom/5는 atom_concat/3보다 느리고 비용이 많이들 수 있습니다 (중간 원자가 만들어 짐). 원자 접 두부를 자주 점검하는 경우, 사용중인 특정 Prolog 컴파일러에서 두 가지 내장 술어의 성능을 점검하는 데 드는 비용을 지불합니다. –