reverse([]) -> []; reverse([H|T]) -> reverse(T) ++ [H].
reverse(List) -> lists:foldl(fun(X, Acc) -> [X|Acc] end, [], List).
reverse(List) -> lists:reverse(List).
reverse(List) -> [X || X <- lists:reverse(List)].