Erlang adalah bahasa pemrograman runtime dan sistem runtime untuk tujuan umum bersamaan. Subset berurutan dari Erlang adalah bahasa fungsional, dengan evaluasi yang ketat, tugas tunggal, dan pengetikan dinamis. Untuk konkurensi mengikuti model Aktor. Itu dirancang oleh Ericsson untuk mendukung aplikasi terdistribusi, toleran terhadap kesalahan, soft-real-time, non-stop. Ini mendukung hot swapping, sehingga kode dapat diubah tanpa menghentikan sistem.
Sementara utas dianggap sebagai topik yang rumit dan rawan kesalahan dalam kebanyakan bahasa, Erlang menyediakan fitur tingkat bahasa untuk membuat dan mengelola proses dengan tujuan menyederhanakan pemrograman bersamaan. Meskipun semua konkurensi eksplisit di Erlang, proses berkomunikasi menggunakan passing pesan alih-alih variabel yang dibagi, yang menghilangkan kebutuhan akan kunci.
Versi pertama dikembangkan oleh Joe Armstrong pada tahun 1986. 2 Ini awalnya merupakan bahasa eksklusif dalam Ericsson, tetapi dirilis sebagai sumber terbuka pada tahun 1998.