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

მასალა ვიკიპედიიდან — თავისუფალი ენციკლოპედია
[შეუმოწმებელი ვერსია][შემოწმებული ვერსია]
შიგთავსი ამოიშალა შიგთავსი დაემატა
No edit summary
No edit summary
ხაზი 25: ხაზი 25:
|თავი4 =
|თავი4 =
|სახელი4 = ბოლო ვერსია
|სახელი4 = ბოლო ვერსია
|მონაცემი4 = R14B04 (05/10/2011)
|მონაცემი4 = 18.0 / 24/06/2015
|თავი5 =
|თავი5 =
|სახელი5 = პარადიგმა
|სახელი5 = პარადიგმა

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


ერლანგი პროგრამირების ენა
ფაილის გაფართოება .erl
გამოქვეყნების თარიღი 1986
შემქმნელი ერიქსონი
ბოლო ვერსია 18.0 / 24/06/2015
პარადიგმა ფუნქციური, თანადროული
ტიპების მინიჭება დინამიკური, ძლიერი
ენების ზეგავლენით პროლოგი
ენებზე ზეგავლა 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]).

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