Programming language · 2012

Elm

Functional reactive programming language.

Official site ›
Elm logo
HaskellWritten in
2012First released
Evan CzaplickiDeveloper
staticTyping
BSD licensesLicense
Built fromInfluenced Elm HaskellRocRustJavaScript
CompilerInfluenceTranspile
Replacedunsafe JavaScript for crash-free front-ends
Being replaced byTypeScript with React for most teams

What is Elm written in?

The Elm compiler is written in Haskell (well-documented).

What Elm is used for

Elm is a pure functional language for building reliable web front-ends; its compiler is famous for friendly errors and for eliminating runtime exceptions in production.

Notable software: front-end applications at companies like NoRedInk that value crash-free UIs.

Quick Facts

Designed by
Evan Czaplicki
First released
2012
Typing
static
License
BSD licenses
Filename extension
.elm
Website
elm-lang.org

About Elm

Elm is a functional reactive programming language. It is a statically typed and garbage-collected language that compiles (transpiles) into another language to run. It supports functional programming. Transpiling means the compiler emits source in another high-level language rather than machine code, so the output then runs on that language's runtime.

Elm first appeared in 2012 and was designed by Evan Czaplicki. Elm is now used mainly in specialized niches and by dedicated communities.

How Elm is implemented

In the Language Lineage dataset, its compiler is written in Haskell.

Elm in the language family tree

Elm drew on ideas from Haskell and went on to influence Rust and Roc.

Sources: Wikipedia · Wikidata · Official site

Frequently Asked Questions

What language is Elm written in?
Elm is primarily implemented in Haskell. See the implementation section above for details and source references.
What languages influenced Elm?
Elm was influenced by Haskell among others. See the influence section above for the full list.
Which languages did Elm influence?
Elm influenced Rust, Roc among others.
When was Elm first released?
Elm was first released in 2012. It was designed by Evan Czaplicki.

Evidence Sources

Discover More

Embed this graph

Paste this iframe into any HTML page to show the Elm relationship graph.

<iframe src="https://www.languagelineage.org/embed?lang=elm" width="100%" height="500" loading="lazy" style="border:0" title="Elm relationship graph"></iframe>

Please attribute the visualization to Language Lineage and link to the Elm source record.

Explore Elm in Graph →