This document provides an overview of the Erlang programming language. It discusses that Erlang is a general purpose, concurrent, functional programming language developed at Ericsson for building distributed, fault-tolerant systems. It notes some of Erlang's key uses in telecommunications, banking, messaging, and e-commerce where high-availability is required. The document also summarizes that Erlang uses processes instead of threads to enable concurrency, and that it relies on recursion rather than loops for iteration due to its functional nature.