Higher Order Programming in Erlang