编写一个复制列表中每个元素的函数。例如:{Duplicate [1 2 3]} 返回列表 [1 1 2 2 3 3]。
我怎样才能在 OZ mozart 中制作它?我不知道 oz 的 sintaxis,在序言中会是这样的:
even(N) :-
N mod 2 =:= 0.
doubleeven([],[]).
doubleeven([H|T], [H,H|Z]) :-
even(H),
!,
doubleeven(T,Z).
doubleeven([H|T], [H|Z]) :-
doubleeven(T,Z).