Mercury (programovací jazyk)

programovací jazyk

Mercury je programovací jazyk, podporující logické a funkcionální programování.

Popis jazykaEditovat

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í. Můžou 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říkladyEditovat

Hello worldEditovat

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

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