Healy Inkorperated

Notes and Other Thoughts

Follow me on GitHub

Introduction to Elm

Elm is a purely functional language that transpiles to JavaScript.

History

Elm is an extension of the senior thesis of Evan Czaplicki while at Harvard. It was first proposed in 2012, but is quickly gaining a large userbase.

Paradigm Shift

Most programmers are used to what is called imperative programming, which outlines the steps the computer must take to solve a problem, like a recipe.

Conversely, Elm uses declarative programming, which defines what the program must accomplish, usually using functions. This is handy, since each function can be tested and known to be bug free, even when composed in larger programs. This is especially true of pure functions, which maintain no state, and depend solely on their input.

Web Programming

Elm was written for the web, and is used for client-side applications. It is a popular alternative to JS, since it is purely functional, which allows for very performant code and very secure checking for safety, which is an area that JS tends to fall flat in.