What is Elm?
Writing HTML apps is super easy with elm-lang/html. Not only does it render extremely fast, it also quietly guides you towards well-architected code.
Features
No Runtime Exceptions
Elm uses type inference to detect corner cases and give friendly hints. NoRedInk switched to Elm about two years ago, and 250k+ lines later, they still have not had to scramble to fix a confusing runtime exception in production.
Great Performance
Elm has its own virtual DOM implementation, designed for simplicity and speed. All values are immutable in Elm, and the benchmarks show that this helps us generate particularly fast JavaScript code
Enforced Semantic Versioning
Elm can detect all API changes automatically thanks to its type system. We use that information to guarantee that every single Elm package follows semantic versioning precisely. No surprises in PATCH releases.
Small Assets
Smaller assets means faster downloads and faster page loads, so Elm does a bunch of optimizations to make small assets the default. Just compile with the –optimize flag and let the compiler do the rest. No complicated set up.
JavaScript Interop
Elm can take over a single node, so you can try it out on a small part of an existing project. Try it for something small. See if you like it.
official elm-lang.org
src stackshare.io/elm