A tutorial for the Elm programming language