Elm

E24476

Elm is a statically typed, functional programming language that compiles to JavaScript and is designed for building reliable, maintainable web front-end applications.

Jump to: Surface forms Statements Referenced by

Observed surface forms (4)

Surface form Occurrences
The Elm Architecture 1
elm-format 1
elm-repl 1

Statements (50)

Predicate Object
instanceOf compiled language
functional programming language
programming language
statically typed programming language
compilesTo JavaScript
concurrencyModel message passing
coreAbstraction Model-View-Update pattern
creator Evan Czaplicki
designedFor front-end web development
developedBy Evan Czaplicki
ecosystem Elm packages
errorHandlingModel Result type
fileExtension .elm
firstAppeared 2012
goal maintainable web applications
reliable web applications
hasFeature Elm self-linksurface differs
surface form: The Elm Architecture

algebraic data types
friendly compiler error messages
immutable data
no null values
no runtime exceptions in practice
package manager
pattern matching
pure functions
time-traveling debugger
type inference
virtual DOM
hasImplementation Elm compiler
hasOfficialWebsite https://elm-lang.org
hasPackageRepository https://package.elm-lang.org
hasTool Elm self-linksurface differs
surface form: elm-format

elm-reactor
Elm self-linksurface differs
surface form: elm-repl

Elm self-linksurface differs
surface form: elm-test
influenced Redux
The Elm Architecture-inspired frameworks
influencedBy F#
Haskell
ML
OCaml
license BSD license
surface form: BSD-3-Clause
notableCharacteristic enforced absence of null
no user-defined runtime exceptions
paradigm functional
primaryDomain web front-end applications
runsOn JavaScript runtime environments
sideEffectManagement managed via Elm runtime
typeDiscipline static
typeSystem strong

Referenced by (7)

Full triples — surface form annotated when it differs from this entity's canonical label.

Elm hasFeature Elm self-linksurface differs
this entity surface form: The Elm Architecture
Elm hasTool Elm self-linksurface differs
this entity surface form: elm-format
Elm hasTool Elm self-linksurface differs
this entity surface form: elm-test
Elm hasTool Elm self-linksurface differs
this entity surface form: elm-repl
F# influenced Elm
Haskell influenced Elm
JavaScript influenced Elm