Erlang is a general-purpose concurrent, garbage-collected programming language and runtime system. The sequential subset of Erlang is a functional language, with strict evaluation, single assignment, and dynamic typing. It was designed by Ericsson to support distributed, fault-tolerant, soft-real-time, non-stop applications. It supports hot swapping, so that code can be changed without stopping a system.
While threads are considered to be a complicated and error-prone topic in most languages, Erlang provides language-level features for creating and managing processes with the aim of simplifying concurrent programming. Though all concurrency is explicit in Erlang, processes communicate using message passing instead of shared variables, which removes the need for locks.
The first version was developed by Joe Armstrong in 1986.It was originally a proprietary language within Ericsson, but was released as open source in 1998.
HISTORY
The name "Erlang", attributed to Bjarne Däcker, has been understood as a reference to Danish mathematician and engineer Agner Krarup Erlang, and (initially at least) simultaneously as an abbreviation of "Ericsson Language".
Erlang was designed with the aim of improving the development of telephony applications. The initial version of Erlang was implemented in Prolog and was influenced by the programming language PLEX used in earlier Ericsson exchanges. According to Armstrong, the language went from lab product to real applications following the collapse of the next-generation AXE exchange named AXE-N in 1995. As a result, Erlang was chosen for the next ATM exchange AXD.
In 1998, the Ericsson AXD301 switch was announced, containing over a million lines of Erlang, and reported to achieve a reliability of nine "9"s.Shortly thereafter, Erlang was banned within Ericsson Radio Systems for new products, citing a preference for non-proprietary languages. The ban caused Armstrong and others to leave Ericsson.The implementation was open sourced at the end of the year.The ban at Ericsson was eventually lifted, and Armstrong was re-hired by Ericsson in 2004.
In 2006, native symmetric multiprocessing support was added to the runtime system and virtual machine.
THOUGHTS ON ERLANG
"I do not believe that other languages can catch up with Erlang anytime soon. It will be easy for them to add language features to be like Erlang. It will take a long time for them to build such a high-quality VM and the mature libraries for concurrency and reliability. So, Erlang is poised for success. If you want to build a multicore application in the next few years, you should look at Erlang."
- Ralph Johnson
HELLO WORLD!
-module(helloworld).
-export([start/0]).
start() ->
io:fwrite("Hello, world!\n").
REFERENCEShttp://www.thegeekstuff.com/2010/05/erlang-hello-world-example/
www.erlang.org/
http://en.wikipedia.org/wiki/Erlang_(programming_language)
GROUP MEMBERS:
Zhid Christian A. Sale
Vince Eric F. Tapang
CMSC124 T-7L
No comments:
Post a Comment