Erlang is a high profile programming language that has been developed to design various robust series of programs that can be shared among a number of computers that exist on the same network.
Even though Erlang shares some similarities with Java, this language puts a core focus on embedded systems and robust servers. Java, on the other hand, puts elevated emphasis on web applications.
History of Erlang
The primary aim that led towards the design and development of Erlang was to enhance the development and design of telephony applications. One of the earliest versions of Erlang was implemented in Prolog. This version is said to be inspired by PLEX programming language. PLEX is the programming language that was used by the earlier exchanges of Ericsson.
In 1988, after a series of development and tests, Erlang finally proved, that it was a language that was suitable for the prototyping of telephone exchanges. However, the interpreter of Prolog was way too slow to promote the efficiency of Erlang.
It was estimated by one of the groups in Ericsson that in order to be used for production purpose, the interpreter was required to work at a speed 40 times greater than its original speed. In the year 1992, the steps were taken for the development of BEAM. It was a virtual machine which worked to compile Erlang to C. This was to be done through the use of a combination of threaded code and natively compiled code. The combination was made to attain a balance between disk space and performance.
It has been said by Armstrong, that the transfer of language from lab tests to real time applications was made after the collapse of AXE-N, which was the next-generation AXE exchange, in the year 1995. Erlang, as a result, was selected for AXD, which was the next ATM exchange.
AXD301 switch was released in the year 1998 by Ericsson. This switch consists of over millions of lines of Erlang Programming language. Sometime after the introduction of AXD301 switch, Ericson prohibited the internal use of Erlang in the development of newer products. Following this ban, Armstrong left Ericson. Ericsson, however, started using Erlang and went for rehiring Armstrong in the year 2004. A native multiprocessing and symmetric support was made a part of the virtual machine as well as the runtime system in the year 2006.
Because of its consistent development, Erlang has been used by a large number of companies throughout the world. It is also a part of the internal operations of Ericson.