Pipedija - tautosaka, gandai, kliedesiai ir jokios tiesos! Durniausia wiki enciklopedija durnapedija!


Erlang

Iš Pipedijos - durniausios enciklopedijos.
Jump to navigation Jump to search

Erlang - labai siaurai naudojama, specializuota programavimo kalba, kurią kadaise sukūrė Ericsson kompanija, kuriai reikėjo labai kompaktiškos kalbos, kuria galima būtų programuoti visokias telefonstotes. Telefonstotėse būdavo labai mažai atminties ir labai silpni procesoriai, nes pirkėjai nenorėdavo mokėti daug pinigų. Tačiau galimybių reikdavo visokių. Taigi, čia Ericcsson inžinieriai kažkaip nusprendė, kad įprastos kalbos netiks, nes jei naudosi kokį Perl, tai nepaveš, o jei C kalbą - tai per daug sudėtinga bus rašyt ir atidirbinėt programas.

Tai štai taip ir gavosi ta Erlang kalba.

Kartais dėl pavadinimo erlangas painiojamas su R kalba ("R language", "R lang" - skamba visai panašiai), bet tai yra klaidinga, nes nors abi kalbos yra kilusios iš kažkokio tai Lisp, jos atsirado nepriklausomai, skirtingais laikais ir šiaip gerokai skiriasi ir paskirtimi, ir savo sintakse.

Bendras Erlang kalbos principas - kad ji veikia kaip interpretatorius, kuris kažkuo primena įprastą shell (galima dirbti ir interaktyviai), tik skirtas specialioms reikmėms ir turintis gana keistą, neįprastą sintaksę. Viskas toje Erlang kalboje sukasi apie tai, kad iš kažkur kažkokius duomenis gauni ir juos apdirbi, bet duomenys gali būti klaidingi, o apdirbimas gali nepavykti. Tačiau kad ir kas būtų blogai, visvien interperetatorius turi nenulūžti ir apdirbimo programa turi veikti, kaip veikusi, nes negalima, kad telefonstotė pakibtų.

Taigi, vienas iš tokių keistumų čia yra visai geras - Erlang kalboje skaitoma, kad jei kažkas palūžo, tai ir gerai, nes taip ir turi būti, nes negali būti, kad nelūžtų. Taigi, jei palūžo - tai veikiam toliau.

Šiaip programuotojų tarpe Erlang yra tokia kalba kaip anekdotas - klaikiai nesuprantama, nes paremta kažkokia keista kitokia gramatika ir neaišku, kokia. Tačiau dėl to Erlang programuotojų yra mažai, o štai telefonstočių su ta Erlang kalba - labai daug. Todėl Erlang programuotojai yra labai gerai apmokami, nors jų pasauliui ir nedaug tereikia.


Hello World Erland kalba

% hello world program
-module(helloworld).
% import function used to import the io module
-import(io,[fwrite/1]).
% export function used to ensure the start function can be accessed.
-export([start/0]).

start() ->
   fwrite("Hello, world!\n").