%%%------------------------------------------------------------------- %%% @author cheese %%% @copyright (C) 2014, %%% @doc %%% %%% @end %%% Created : 11. Jan 2014 2:28 PM %%%------------------------------------------------------------------- -module(lists_extension). -author("cheese"). %% API -export([are_equal/2, cut_last_item/1]). -export([internal_are_equal/2, internal_cut_last_item/2]). are_equal(List1, List2) when erlang:length(List1) == erlang:length(List2) -> internal_are_equal(List1, List2); are_equal(_List1, _List2) -> false. internal_are_equal([], []) -> true; internal_are_equal([Head1 | Tail1], [Head2 | Tail2]) when Head1 == Head2 -> internal_are_equal(Tail1, Tail2); internal_are_equal(_List1, _List2) -> false. cut_last_item(Arr) -> internal_cut_last_item(Arr, []). internal_cut_last_item([], Res) -> lists:reverse(Res); internal_cut_last_item([_OneItem], Res) -> lists:reverse(Res); internal_cut_last_item([Head | Tail], Res) -> internal_cut_last_item(Tail, [Head | Res]).