Erlang (programming language)

From Citizendium
Revision as of 13:44, 29 January 2008 by imported>Eric Evers (New page: {{subpages}} ''For other uses, see erlang (disambiguation).'' '''erlang''' is a general-purpose, functional computer programming language which shares more with prolog than an...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
This article is developing and not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
Tutorials [?]
 
This editable Main Article is under development and subject to a disclaimer.

For other uses, see erlang (disambiguation).

erlang is a general-purpose, functional computer programming language which shares more with prolog than any other language. It was designed specificly to do parallel programming. which is still in use more than thirty years after its creation. erlang was developed in 1987 by Joe Armstrong and others (then of Eriksonn) for use to program telephone networks. Ref: Joe Armstrong (2003). "Making reliable distributed systems in the presence of software errors". Ph.D. Dissertation. http://www.erlang.org/download/armstrong_thesis_2003.pdf New versions are released by Ericsson on a yearly basis.

Syntax

Hello World

-module(hello).
-export([start/0]).

start() ->
   io:format("Hello, world!\n").

Analysis of the example

The Hello World program (see above) appears in many programming languages books and articles as a cursory introduction into a language's syntax. It was introduced in the book The C Programming Language[1].

-module(hello) tells the precompiler to create a new module(library) called hello. This also tells us the name of the file: hello.erl.

-export([start/0]). exports a function named start with 0 arguments to the world outside of this module called hello.

start() -> tells the compiler that there is a function named start with no arguments.

io:format("Hello, world!\n"). will make the program output Hello, world! and a new line (\n) on the screen. printf is itself a function similar to main but predefined in a library (io) and linked into the program at compile time or runtime. The trailing period is the end of function marker in erlang.

See also

References

  1. Cite error: Invalid <ref> tag; no text was provided for refs named K&R