Friday, November 20, 2009

Concurrent programming with Erlang

What is concurrent programming ?
it is a form of computing where more than one process executing in parallel. it can be executed in a seqential manner in a single processor.

In concurrent programming we use two kind of procedures :
  • Shared memory communication
               where processes use shared variables and by altering it they communicate with each other. there are some issues when more than one process altering a single and shared variables so in order to eliminate that kind of issues we use locking mechanism where we use semaphores, mutex and monitors.  
  • Message passing communication 
               here there are no shared variables it passes messages asynchronously

Erlang

Erlang is also known as Ericsson language because it was originally developed and used by Ericsson but after 1998 Erlang was open sourced. Erlang is a general purpose concurrent programming language and run time environment. it is used by large telecommunication systems.

Erlang uses Message passing communication instead of Shared memory communication so it removes the use of locks.

Erlang's strength is concurrency it has his powerful but a few set of primitives to create and manipulate processes they are not operating system processes or operating system threads but lightweight processes.

we will see how to program with erlang in an upcoming article....

cheers !!
Kesh

    No comments:

    Post a Comment