condense reverse even further
This commit is contained in:
@@ -37,7 +37,8 @@ verify_attributes(Var, Value, Goals) :-
|
|||||||
% suggestions for improvement.
|
% suggestions for improvement.
|
||||||
|
|
||||||
dif(X, Y) :- X \== Y,
|
dif(X, Y) :- X \== Y,
|
||||||
( term_variables(X, XVars), term_variables(Y, YVars),
|
( X \= Y -> true
|
||||||
|
; term_variables(X, XVars), term_variables(Y, YVars),
|
||||||
dif_set_variables(XVars, X, Y),
|
dif_set_variables(XVars, X, Y),
|
||||||
dif_set_variables(YVars, X, Y)
|
dif_set_variables(YVars, X, Y)
|
||||||
).
|
).
|
||||||
|
|||||||
@@ -42,13 +42,13 @@ append([X|L], R, [X|S]) :- append(L, R, S).
|
|||||||
memberchk(X, Xs) :- member(X, Xs), !.
|
memberchk(X, Xs) :- member(X, Xs), !.
|
||||||
|
|
||||||
reverse(Xs, Ys) :-
|
reverse(Xs, Ys) :-
|
||||||
( var(Ys) -> reverse(Xs, Ys, [], [], Xs)
|
( var(Ys) -> reverse(Xs, Ys, [], Xs)
|
||||||
; reverse(Ys, Xs, [], [], Ys)
|
; reverse(Ys, Xs, [], Ys)
|
||||||
).
|
).
|
||||||
|
|
||||||
reverse([], [], XsRev, YsRev, YsRev).
|
reverse([], [], YsRev, YsRev).
|
||||||
reverse([X1|Xs], [Y1|Ys], XsPreludeRev, YsPreludeRev, Xss) :-
|
reverse([X1|Xs], [Y1|Ys], YsPreludeRev, Xss) :-
|
||||||
reverse(Xs, Ys, [X1|XsPreludeRev], [Y1|YsPreludeRev], Xss).
|
reverse(Xs, Ys, [Y1|YsPreludeRev], Xss).
|
||||||
|
|
||||||
maplist(_, []).
|
maplist(_, []).
|
||||||
maplist(Cont1, [E1|E1s]) :-
|
maplist(Cont1, [E1|E1s]) :-
|
||||||
|
|||||||
Reference in New Issue
Block a user