ერლანგი: განსხვავება გადახედვებს შორის

მასალა ვიკიპედიიდან — თავისუფალი ენციკლოპედია
[შეუმოწმებელი ვერსია][შეუმოწმებელი ვერსია]
შიგთავსი ამოიშალა შიგთავსი დაემატა
clean up, removed: {{Link GA|ru}} using AWB
No edit summary
ხაზი 43: ხაზი 43:
|თავი10 =
|თავი10 =
|სახელი10 = ლიზენზია
|სახელი10 = ლიზენზია
|მონაცემი10 = [[Mozilla Public License]]
|მონაცემი10 = [[Apache License 2.0 ]] მე-18-ე ვერსიიდან და [[Erlang Public License ]] მე-17-ე ვერსიამდე
|თავი11 =
|თავი11 =
|სახელი11 = ვებ გვერდი
|სახელი11 = ვებ გვერდი

10:11, 14 ივლისი 2015-ის ვერსია


ერლანგი პროგრამირების ენა
ფაილის გაფართოება .erl
გამოქვეყნების თარიღი 1986
შემქმნელი ერიქსონი
ბოლო ვერსია R14B04 (05/10/2011)
პარადიგმა ფუნქციური, თანადროული
ტიპების მინიჭება დინამიკური, ძლიერი
ენების ზეგავლენით პროლოგი
ენებზე ზეგავლა Clojure, სკალა
ოპერაციული სისტემა მრავალპლატფორმული
ლიზენზია Apache License 2.0 მე-18-ე ვერსიიდან და Erlang Public License მე-17-ე ვერსიამდე
ვებ გვერდი http://www.erlang.org

ერლანგი (მათემატიკოსი აგნერ ერლანგის მიხედვით, და არგრეთვე როგორც Ericsson Language-ის შემოკლებით), არის თანადროული, ფუნქციური, ცხადი დროიანი და გაშვებული კოდის განაწილების შემძლე პროგრამირების ენა. მას გააჩნია შეცდომების მიმართ ტოლერანტობის მექანიზმი და აგრეთვე გაშვებული კოდის განახლების, გათიშვის გარეშე, რაც საშუალებას იძლევა შეუჩერებრივი პროგრამების შექმისთვის.

მაგალითები

ერლანგში ფაქტორიალის ფუნქცია:

-module(fact).    % This is the file 'fact.erl', the module and the filename MUST match 
-export([fac/1]). % This exports the function 'fac' of arity 1 (1 parameter, no type, no name)
 
fac(0) -> 1; % If 0, then return 1, otherwise (note the semicolon ; meaning 'else')
fac(N) -> N * fac(N-1). 
% Recursively determine, then return the result 
% (note the period . meaning 'endif' or 'function end')

დახარისხების ალგორითმი Quicksort-ი:

%% quicksort:quicksort(List)
%% Sort a list of items
-module(quicksort).     % This is the file 'quicksort.erl'
-export([quicksort/1]).  % A function 'quicksort' with 1 parameter is exported (no type, no name)
 
quicksort([]) -> [];            % If the list [] is empty, return an empty list (nothing to sort)
quicksort([Pivot|Rest]) -> % Compose recursively a list with 'Front' 
                                      % from 'Pivot' and 'Back' from 'Rest'
    quicksort([Front || Front <- Rest, Front < Pivot]) 
    ++ [Pivot] ++ 
    quicksort([Back || Back <- Rest, Back >= Pivot]).

რესურსები ინტერნეტში