Skip to content

Latest commit

 

History

History

functional2imperative

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Функциональный язык

Придумайте примитивный функциональный язык программирования и реализуйте его трансляцию в императивный язык.

Пример:

fac :: Integer -> Integer
fac 0 = 1
fac n | n > 0 = n * fac(n - 1)

Вывод:

function fac(n: integer): integer;
begin
    if n = 0 then
        fac := 1
    else if n > 0 then
        fac := n * fac(n - 1);
end;