What is Elm?
Question of the Day - What is Elm?
A delightful language for reliable webapps.
Elm is a functional language that compiles to JavaScript. It helps you make websites and web apps. It has a strong emphasis on simplicity and quality tooling.
Elm is a domain-specific programming language for creating web browser-based graphical user interfaces.
It's main features are:
- Immutability
- Static types
- Module system
- Interoperability with HTML, CSS, and JavaScript
It's main advantages are:
- No runtime exceptions
- Great performance
- Small assets
The main advantage for a developer is that when the Elm compiler is happy with the code, browsers and users will be happy too (the same feeling Go developers have).
On ELM Package the community shares reusable packages.
Justin Herrick maintains a curated list at github.com/jah2488/elm-companies of companies using ELM in production.
A disadvantage might be that it is a new language for a developer to learn, and pure functional. But you can find a lot of good resources, that I share with you at the bottom of this page.
Resources
- Official docs
- Extensive Guide (fundamentals of programming in Elm)
- Beginning Elm (a gentle introduction to ELM programming language)