-1
run([p(X,Y,Z),h(Z,P,Q)],Out).
コード:SWIのプロローグに
:- ensure_loaded(library(lists)).
run([X|Y],Out) :-
X =.. [Fct|Args],
X =..Total,
length(Args,L),
concat(abs_,L,Fct_A),
Out =.. [Fct_A|Total].
私は正しい答えを得る:ヤップのプロローグに
A = abs_3(p, X, Y, Z).
は失敗します。私はyapを使うべきだと思った。
concat(abs_,L,Fct_A)
の代わりに何を使用する必要がありますか?私はatom_codesを試しましたが、それは原子の終わりに奇妙なasciiを追加します。助けてください 。
atomic_concatの仕事 –
'atomic_concat/2'はうまくいくかもしれませんが、それはあなたにかなりの頭痛を与えます。 – false