문제
프롤로그 목록을 효율성 측면에서 프롤로그 목록 (목록이 아님)으로 변환하는 가장 좋은 방법은 무엇입니까?
인터페이스 및 사용 예제는 다음과 같습니다.
%% list_to_term(+List:list, +Functor:atom, -Term:term)
%
% Usage:
%
% ?- list_to_term([], myfunctor, Term).
% Term = myfunctor.
%
% ?- list_to_term([a, b, [c], D, 2], myfunctor, Term).
% Term = myfunctor(a, b, [c], D, 2).
즉, 주어진 목록 (실제로 중첩 된 용어)은 주어진 이름의 용어로 평평하게됩니다.
나는 이것을하는 것이 합리적이라고 말하는 것이 아닙니다. (그러나 당신이 그렇게 생각한다면, 당신의 답변에 USECASE를 제공하십시오.)
해결책
당신은 그것을 사용해야합니다 =..
처럼 운영자 :
list_to_term(List, Functor, Term) :-
Term =.. [Functor | List].
제휴하지 않습니다 StackOverflow