Mercury (programming language)

This is an old revision of this page, as edited by 217.120.166.248 (talk) at 21:14, 6 December 2004 (Category: logic programming languages). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Mercury is a functional/logical programming language based on Prolog, but designed to be more useful for real-world programming problems.

Mercury is compiled rather than interpreted as is traditional for logic languages. It has a sophisticated, strict type and mode system. Its authors claim that these features and the abstract nature of logic programming make it easier to write reliable programs rapidly. Mercury's module system also makes it easy to divide logic programs up into self-contained modules, a problem for logic programs in the past.

A sample piece of programming in Mercury looks like

 :- module hello_world.

 :- interface.

 :- import_module io.

 :- pred main(io__state, io__state).
 :- mode main(di, uo) is det.

 :- implementation.

 main -->
 	io__write_string("Hello, World!\n").

(by Ralph Becket at the University of Melbourne):

Mercury is developed at the University Of Melbourne Computer Science department under the supervision of Dr. Zoltan Somogyi.

See also