Erlang (programovací jazyk)
Paradigma | multiparadigmatický: paralelní, funkcionální |
---|---|
Vznik | 1986 |
Autor | Ericsson |
Vývojář | Ericsson |
Poslední verze | 26.2.3[1] ( 7. března 2024) |
Typová kontrola | dynamická, silná |
Hlavní implementace | Erlang |
Ovlivněn jazyky | Prolog |
Ovlivnil jazyky | Clojure, Scala |
OS | Multiplatformní (Linux, UNIX-like, Windows) |
Licence | Pozměněná MPL |
Web | www.erlang.org |
Erlang je multiparadigmatický programovací jazyk, specializovaný pro tvorbu distribuovaných, vysoce dostupných aplikací, odolných proti selhání. Sekvenční podmnožina jazyka je založena na funkcionálním paradigmatu s dynamickou typovou kontrolou. Erlang obsahuje jazykové konstrukty pro rychlou a snadnou tvorbu procesů, jejich vzájemnou komunikaci a správu.
Joe Armstrong, Robert Virding a Mike Williams navrhli a vyvinuli první verzi jazyka v roce 1986. Původně se jednalo o proprietární jazyk společnosti Ericsson, v roce 1998 byl uvolněn jako open source.[2]
Kód
Zápis jazyka vypadá takto:
-module(fact).
-export([fac/1]).
fac(0) -> 1;
fac(N) when N > 0 -> N * fac(N-1).
Implementace algoritmu Quicksort:
%% quicksort:qsort(List)
%% Sort a list of items
-module(quicksort).
-export([qsort/1]).
qsort([]) -> [];
qsort([Pivot|Rest]) ->
qsort([ X || X <- Rest, X < Pivot]) ++ [Pivot] ++ qsort([ Y || Y <- Rest, Y >= Pivot]).
Reference
- ↑ GitHub – erlang/otp – Release OTP-26.2.3 (anglicky)
- ↑ ARMSTRONG, J. A history of Erlang. Proceedings of the third ACM SIGPLAN conference on History of programming languages (HOPL). 2007-06-09. ISBN 978-1-59593-766-7. Dostupné online [cit. 2022-01-07]. DOI 10.1145/1238844.1238850. (anglicky)
Externí odkazy
- Obrázky, zvuky či videa k tématu Erlang na Wikimedia Commons
Média použitá na této stránce
(c) Shmuel Csaba Otto Traian, CC BY-SA 3.0
The LYME (software bundle) (and LYCE (software bundle)) are composed of
- Linux (Linux kernel, glibc, etc.)
- Yaws or some other web server written in Erlang
- Mnesia or CouchDB and
- Erlang to serve dynamic web content.