>>246
もっと一般化したら・・

二つの文字列を交互に併合する(Str1,Str2,Str) :-
  atom_chars(Str1,Chars1),
  atom_chars(Str2,Chars2),
  順併合(Chars1,Chars2,Chars3),
  atom_chars(Str,chars3).

順併合([],L,L) :- !.
順併合([A|R1],L2,[A|R]) :-
  順併合(L2,R1,R).