A tour of erlang