Erlang
Erlang | |
---|---|
Семантыка | функцыянальная |
З’явілася ў | 1986 |
Аўтар(ы) | Джо Армстронг, Роберт Вірдзінг, Майк Уільямс |
Пашырэнне файлаў | .erl,.hrl |
Тыпізацыя даных | дынамічная, строгая |
Зведала ўплыў | Lisp,Prolog,Smalltalk |
Паўплывала на | Clojure, Elixir,Rust,Scala,Go |
Ліцэнзія | Apache Software License 2.0[d][1] |
Сайт | erlang.org(англ.) |
Erlang(эрланг) —функцыянальнаямова праграмаванняз дынамічнай тыпізацыяй, створаная для распрацоўкі размеркаваных сістэм, устойлівых да памылак. Праграма на Erlang звычайна пабудавана з сотняў паралельных легкаважных працэсаў, якія ўзаемадзейнічаюць праз абмен асінхроннымі паведамленнямі.
Erlang была створана ў 1986 годзе ў кампанііEricssonДжо Армстрангам, Робертам Вірдзінгам і Майкам Уільямсам. Яны даследавалі магчымасць выкарыстання тагачасных моў праграмавання для пабудовы тэлекамунікацыйных сістэм, аднак у выніку стварылі ўласную мову праграмавання і платформу Erlang/OTP (Open Telecom Platform)[2].
Першапачаткова гэта было прапрыетарнае праграмнае забеспячэнне, аднак у 1998 годзе Ericsson вырашыла адмовіцца ад далейшага выкарыстання мовы ўнутры кампаніі для новых прадуктаў, што прывяло да выпуску Erlang у якасцісвабоднага праграмнага забеспячэнняз адкрытым зыходным кодам і сыходу стваральнікаў мовы з кампаніі. У выніку кампанія зноў наняла Армстранга ў 2004 годзе і працягнула выкарыстоўваць Erlang[3].
Erlang выкарыстоўваецца ў мабільных сетках GPRS, 3G і LTE па ўсім свеце. Аднак гэта не адзіная сфера яе ўжывання — Erlang была выкарыстана для распрацоўкі RabbitMQ і WhatsApp, таксама яе выкарыстоўваюць унутры сваіх праектаў такія кампаніі, якFacebook,Cisco,Goldman Sachs,NintendoіSamsung[4][5].
Прыклад
[правіць|правіць зыходнік]Прыклад напісання праграмы падлікуфактарыяла:
-module(fact).% Вызначэнне назвы модуля, павінна супадаць з назвай файла ('fact.erl')
-export([fac/1]).% Экспарт функцыі, пазначэнне арнасці 1
fac(0)->1;% Пры перадачы 0 вернецца 1, інакш - гл. наступны радок
fac(N)whenN>0,is_integer(N)->N*fac(N-1).% Рэкурсіўны падлік, вяртанне рэзультата
Гл. таксама
[правіць|правіць зыходнік]Зноскі
- ↑Erlang/OTP 18.0 has been releasedПраверана 24 лютага 2019.
- ↑Erlang -- Academic and Historical Questions(англ.).www.erlang.org.Праверана 10 студзеня 2023.
- ↑question about Erlang's future(англ.).www.erlang.org.Праверана 10 студзеня 2023.
- ↑Which companies are using Erlang, and why?(англ.).erlang-solutions.com(11 верасня 2019).Праверана 10 студзеня 2023.
- ↑Erlang -- What is Erlang?(англ.).www.erlang.org.Праверана 10 студзеня 2023.
Спасылкі
[правіць|правіць зыходнік]- Афіцыйны сайт(англ.)