A Mercury programozási nyelv

Szakaszok

Egy Mercury modulban minden szakasz vagy egy deklaráció, vagy egy klóz. Ha a kifejezés legmagasabb szintű funktora a :-/1, akkor a szakasz deklaráció, egyébként klóz. Három fajta klózt különböztetünk meg: ha a kifejezés legfelsőbb szintű funktora :-/2, akkor a kifejezés egy szabály. Ha a legfelsőbb szintű funktor a -->/2, akkor a kifejezés egy DCG szabály. Egyébként a kifejezés egy tény. Két fajta szabályt és kétfajta tényt különböztetünk meg: Ha a szabály fejének legmagasabb szintű funktora a =/2 operátor, akkor a szabály egy függvény szabály, egyébként egy predikátum szabály. Ha egy tény fejének legmagasabb szintű funktora a =/2, akkor a tény egy függvény tény, egyébként egy predikátum tény.