Someone
public text v1 · immutablepreorder(Tree,Pre).
preorder(tree(X,L,R),Xs):- preorder(L,Ls), preorder(R,Rs), append ([X|Ls],Rs,Xs).
preorder(void,[]).
postorder(Tree,Post).
postorder(tree,(X,L,R),Xs):- postorder (L,Ls), postorder(R,Rs), append(Rs,[X],Rs1), append(Ls,Rs1,Xs).
postorder(void,[]).
inorder(Tree,Pre).
inorder(tree(X,L,R),Xs):- inorder(L,Ls), inorder(R,Rs), append (Ls,[X|Rs],Xs).
preorder(void,[]).