Erlang (programming language)

Edit · View history

Erlang (programming language)

Erlang is a general-purpose, concurrent, functional programming language, as well as a garbage-collected runtime system. It was designed by Ericsson to support distributed, fault-tolerant, soft-real-time, and non-stop applications. Erlang is known for its lightweight concurrency model based on the Actor model, which allows thousands or even millions of concurrent processes to run efficiently.

The language was originally proprietary, but was released as open source in 1998. It has since gained a strong following outside Ericsson, especially in telecommunications, messaging, and web development. The BEAM virtual machine, which runs Erlang code, also supports the Elixir language.

History

Erlang was developed in the late 1980s at the Ericsson Computer Science Laboratory by Joe Armstrong, Robert Virding, and Mike Williams. The name is widely believed to be a reference to the Danish mathematician Agner Krarup Erlang or an abbreviation of "Ericsson Language". The first version was implemented in Prolog, but by 1990 a more efficient virtual machine was designed.

In 1996, Ericsson's AXE telephone exchanges began using Erlang for new subsystems. The language was open-sourced in 1998 to prevent it from being abandoned when Ericsson discontinued a proprietary version. The Open Telecom Platform (OTP) middleware library was released alongside the language and became an integral part of the Erlang ecosystem.

Features

Usage

Erlang is used in production systems requiring high availability and concurrency. Notable users include:

See also