Mercury (programovací jazyk)
Vzhled
Mercury je programovací jazyk, podporující logické a funkcionální programování.
Popis jazyka
[editovat | editovat zdroj]Mercury je deklarativní programovací jazyk. Funkce ani prediktáty nemohou mít žádné boční efekty. Operace, které obvykle mívají boční efekty, například výpis na obrazovku, přijímají jako parametr "stav světa" a vrací nový (ten starý zničí).
Prediktáty musí mít určené, jestli uspějí. Mohou být deterministické (det
)-vždy najde právě jedno řešení, semideterministické (semidet
)-vždy najde nejvýše jedno řešení, multi
-vždy najde alespoň jedno řešení a nedeterministické (nondet
)-není dáno, kolik najde řešení, a zda vůbec nějaké najde.
Příklady
[editovat | editovat zdroj]Hello world
[editovat | editovat zdroj]:- module hello.
:- interface.
:- import_module io.
:- pred main(io::di, io::uo) is det.
:- implementation.
main(!IO) :-
io.write_string("Hello, World!\n", !IO).