elm – the best of functional programming in your browser
No runtime exceptions
Yes, you read that right, no runtime exceptions. Elm’s compiler is amazing at finding errors before they can impact your users. The only way to get Elm code to throw a runtime exception is by explicitly invoking
Blazing fast rendering
Libraries with guarantees
Semantic versioning is automatically enforced for all community libraries. Elm’s package manager detects any API changes, so breaking API changes never sneak into patches. You can upgrade with confidence.
No semicolons. No mandatory parentheses for function calls. Everything is an expression. For even more concise code there’s also destructuring assignment, pattern matching, automatic currying, and more.
What if you could pause time and replay all recent user inputs? What if you could make a code change and watch the results replay without a page refresh? Try it out and see for yourself!