I’m very sad to see that the creator of Erlang, Joe Armstrong, has passed away. Erlang (Ericsson Language) is one of the pioneering languages in distributed computing, which was built by Ericsson for their carrier-grade telco switches. Erlang:
- Is a functional programming language in the spirit of Lisp, which means it is easy to scale in horizontally
- Fault tolerant, embracing the notion of “let it fail”. Failure is seen as part and parcel of any system
- Used garbage collection long before Java popularised it
- Highly available, making it possible to hot-swap parts of program code without bringing down the entire application
- Is both a language and runtime platform using the OTP (Open Telco Platform)
- Is one of the main influences of Akka, the Scala based actor implementation, which provides a highly scalable distributed compute platform
Joe Armstrong was a true innovator in his field and I am sad to see him pass away. You can read his seminal PhD thesis here and also hear him live on Software Engineering Radio here. The latter is more than 10 years old but still worth a listen for an introduction to Erlang and its interesting history from telco real-time system to open source innovator.