Elm (programming language)

Elm
The Elm tangram
ParadigmFunctional
FamilyHaskell
Designed byEvan Czaplicki
First appearedMarch 30, 2012 (2012-03-30)
Stable release
0.19.2 / July 6, 2026 (2026-07-06)
Typing disciplineStatic, strong, inferred
Platformx86-64, ARM
OSLinux, macOS, Windows
LicensePermissive (Revised BSD)
Filename extensions.elm
Websiteelm-lang.org Edit this at Wikidata
Influenced by
Haskell, Standard ML, OCaml, F#
Influenced
Redux, Rust, Vue, Roc, Derw, Gren

Elm is a domain-specific programming language for declaratively creating web browser-based graphical user interfaces. Elm is purely functional, and is developed with emphasis on usability, performance, and robustness. It advertises "no runtime exceptions in practice", made possible by the Elm compiler's static type checking.