Erlang (programming language)
Programming language / From Wikipedia, the free encyclopedia
Dear Wikiwand AI, let's keep it short by simply answering these key questions:
Can you list the top facts and stats about Erlang (programming language)?
Summarize this article for a 10 year old
Erlang (/ˈɜːrlæŋ/ UR-lang) is a general-purpose, concurrent, functional high-level programming language, and a garbage-collected runtime system. The term Erlang is used interchangeably with Erlang/OTP, or Open Telecom Platform (OTP), which consists of the Erlang runtime system, several ready-to-use components (OTP) mainly written in Erlang, and a set of design principles for Erlang programs.[5]
Paradigms | Multi-paradigm: concurrent, functional, object oriented |
---|---|
Designed by |
|
Developer | Ericsson |
First appeared | 1986; 38 years ago (1986) |
Stable release | |
Typing discipline | Dynamic, strong |
License | Apache License 2.0 |
Filename extensions | .erl, .hrl |
Website | www |
Major implementations | |
Erlang | |
Influenced by | |
Lisp, PLEX,[2] Prolog, Smalltalk | |
Influenced | |
Akka, Clojure,[3] Dart, Elixir, F#, Opa, Oz, Reia, Rust,[4] Scala, Go | |
|
The Erlang runtime system is designed for systems with these traits:
- Distributed
- Fault-tolerant
- Soft real-time
- Highly available, non-stop applications
- Hot swapping, where code can be changed without stopping a system.[6]
The Erlang programming language has immutable data, pattern matching, and functional programming.[7] The sequential subset of the Erlang language supports eager evaluation, single assignment, and dynamic typing.
A normal Erlang application is built out of hundreds of small Erlang processes.
It was originally proprietary software within Ericsson, developed by Joe Armstrong, Robert Virding, and Mike Williams in 1986,[8] but was released as free and open-source software in 1998.[9][10] Erlang/OTP is supported and maintained by the Open Telecom Platform (OTP) product unit at Ericsson.