]]> ]]>

Melbourne Mercury Compiler

Реализация языка программирования Mercury

Официальный (и единственный) компилятор Mercury. Транслирует код на Mercury в код на C. Написан на самом Mercury (бутстрепинг с NU-Prolog и SICStus Prolog).

Примеры:

Hello, World!:

Пример для версий Mercury 10.04
 :- module hello.
 :- interface.
 :- import_module io.
 :- pred main(io::di, io::uo) is det.

 :- implementation.
 main(!IO) :-
 	io.write_string("Hello, World!\n", !IO).

Числа Фибоначчи:

Пример для версий Mercury 10.04

Вычисление и вывод на экран десятого числа последовательности Фибоначчи.

 :- module fib.
 :- interface.
 :- import_module io.
 :- pred main(io::di, io::uo) is det.
 
 :- implementation.
 :- import_module int.

 :-func fib(int) = int.
 fib(N) = (if N =< 2 then 1 else fib(N - 1) + fib(N - 2)).

 main(!IO) :-
        io.write_string("fib(10) = ", !IO),
        io.write_int(fib(10), !IO),
        io.nl(!IO).
        % Could instead use io.format("fib(10) = %d\n", [i(fib(10))], !IO).

Комментарии

]]>

blog comments powered by Disqus

]]>

Работа программистам