リストとリストを結合する。
♪ プログラムコード code
love:uema% cat append.pl % append.pl % リストとリストの結合 % 冗長に定義してみます。 append_1([], A, A). append_1( [X|A], B, C ) :- append_1( A, B, D ), C = [X|D]. % 上を整理すると。 append_2( [], A, A ). append_2( [X|A], B, [X|C] ) :- apend_2( A, B, C ). love:uema%
実行例
love:uema% swipl -q -s append.pl ?- append_1( [a,b,[c,d],e], [f,g], A ). A = [a, b, [c, d], e, f, g]. ?- append_2( [a,b,[c,d],e], [f,g], A ). A = [a, b, [c, d], e, f, g]. ?- append( [a,b,[c,d],e], [f,g], A ). % システム A = [a, b, [c, d], e, f, g]. ?-