Chapter 1. Why Elm?
Elm is a functional language that compiles to JavaScript and is specifically for designing the frontend of your web app. One of the main design goals of Elm is to incorporate some of the advances from the last 40 years of programming design (many of which have not made the full transition from academia to common use), and to not require you to learn a bunch of jargon to benefit from those advances. The practical result is that Elm code is fast, hard to break, easily testable, and profoundly maintainable. Above all, Elm is a functional programming language for the practical frontend developer.
This report is meant for developers who are largely familiar with JavaScript and other dynamically typed, imperative languages, but who aren’t quite as familiar with static types or purely functional programming languages. If you’re an established web developer, you might feel a bit overwhelmed by trying to keep track of the recent explosion of frontend technologies—so what makes Elm fundamentally different?
Here’s quick overview of some of Elm’s best features; we’ll cover these topics in more detail later in this report.
Elm eliminates many of the most common pain points of frontend
development. That’s because many of the common issues that frontend
developers have to deal with just don’t exist in Elm. There is no
null and no confounding errors such as undefined is not a function,
but that’s just the beginning. Elm really shines when we talk about the
higher-level benefits ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access