Erlang - это универсальный параллельный язык для сборки мусора и система времени исполнения. Последовательное подмножество Erlang - это функциональный язык со строгой оценкой, единичным присваиванием и динамической типизацией. Для параллелизма следует модель актера. Он был разработан компанией Эрикссон для поддержки распределенных, отказоустойчивых, программных приложений реального времени, без остановок. Он поддерживает горячую замену, так что код может быть изменен без остановки системы.
В то время как потоки считаются сложной и подверженной ошибкам темой в большинстве языков, Erlang предоставляет функции на уровне языка для создания и управления процессами с целью упрощения параллельного программирования. Хотя весь параллелизм явно выражен в Erlang, процессы взаимодействуют с помощью передачи сообщений вместо общих переменных, что устраняет необходимость в блокировках.
Первая версия была разработана Джо Армстронгом в 1986 году. 2 Изначально это был проприетарный язык в Ericsson, но он был выпущен как открытый исходный код в 1998 году.