Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Programming Language

Erlang

Concurrent Language

Erlang is a general-purpose, concurrent, functional programming language designed by Joe Armstrong, Robert Virding and Mike Williams at Ericsson in 1986 for building fault-tolerant, distributed telecommunications systems. It was released as free and open-source software in December 1998. This description is adapted from Wikipedia contributors under CC BY-SA 4.0; changes were made. https://creativecommons.org/licenses/by-sa/4.0/

Facts
First Released
1986 2
Paradigm
Multi-paradigm: concurrent, functional. 2
Significance
Joe Armstrong summarized the design goal as software that is write once, run forever. Erlang's fault-tolerant, distributed model later powered systems including WhatsApp, well beyond its original telecommunications-switch use. 2
Classification
Typing Discipline
Dynamically Typed 1
Typing Discipline
Strongly Typed 1
License
Apache License 2.0 1
FAQs

What kinds of applications is Erlang particularly suited for?

The Erlang FAQ at erlang.org says: "Distributed, reliable, soft real-time concurrent systems. Telecommunication systems, e.g. controlling a switch or converting protocols. Servers for Internet applications, e.g. a mail transfer agent, an IMAP-4 server, an HTTP server or a WAP Stack."
Connections

Associated With

Gleam compiles to and runs on the BEAM, Erlang's runtime.

Base Language For

Direction correction: Elixir compiles to and runs on the Erlang VM (BEAM) and reuses Erlang libraries, not the reverse.

Follows Typing Discipline

In Field

Source Wikipedia: Erlang (programming language)

Influenced

Pony's actor-model concurrency draws on Erlang's actor model.

Influenced By

Source Wikipedia: Erlang (programming language)

Invented By

Source Wikipedia: Erlang (programming language)

Licensed Under

Open Questions

In the Other Atlases

Developed By

Also in Business Atlas: the developer of this subject.

Originated In

Also in Business Atlas: where this subject originated.

Source Wikipedia: Erlang (programming language)tier 2
Sources
1. Wikidata: Erlang
  • Wikidata Q334879, resolved via en.wikipedia pageprops (wave rule R-L)
  • Wikidata Q334879 P275 (license)
  • Wikidata Q334879 P7078 (typing discipline)
View the Source
2. Wikipedia: Erlang (programming language)
Wikimedia Foundation
  • Processes
    Joe Armstrong remarked in an interview with Rackspace in 2013: "If Java is 'write once, run anywhere', then Erlang is 'write once, run forever'."
  • Infobox: paradigms
    Multi-paradigm: concurrent, functional
  • Invented By: Joe Armstrong
  • In Field: Distributed Computing
  • Influenced By: Prolog, History section
    The initial version of Erlang was implemented in Prolog.
View the Source
Programming Language Database (PLDB): Erlang - PLDB
Programming Language Database (PLDB)In Group: Parallel and Distributed Programming Languages, Page text
Quote, In Group: Parallel and Distributed Programming Languages, Page text
Erlang ( ER-lang) is a general-purpose, concurrent, functional programming language
View the Source
Open Questions (1 open question)
Is Erlang named for mathematician Agner Krarup Erlang or as a syllabic abbreviation of Ericsson Language?

Sources describe the name as presumed by telephony-switch engineers to honor Danish mathematician Agner Krarup Erlang, and also as a syllabic abbreviation of Ericsson Language, the company where the language was created; no single authoritative account settles which motivation, if not both, actually drove the choice.

What would resolve this A primary statement from Joe Armstrong, Robert Virding or Mike Williams, or an Ericsson internal record from the 1980s, definitively naming the intended derivation of the name.
Computing historyWikipedia: Erlang (programming language)
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.