Projects / Mercury


Mercury is a new logic/functional programming language, which combines the clarity and expressiveness of declarative programming with advanced static analysis and error detection features. Its highly optimized execution algorithm delivers efficiency far in excess of existing logic programming systems, and close to conventional programming systems. Mercury addresses the problems of large-scale program development, allowing modularity, separate compilation, and numerous optimization/time trade-offs.

Operating Systems

Recent releases

  •  16 Jun 2013 12:10

    Release Notes: This bugfix release fixes build problems on Solaris and NetBSD and adds support for selecting the C# compiler at configuration time. Various other minor bugs have been fixed. There are also some minor additions to the standard library.

    •  15 May 2013 11:57

      Release Notes: Generation of 64-bit executables on Windows is now supported. Compilation times for very large programs have been improved. Several new type representation optimizations have been added. The debugger now has better support for handling cliques of mutually recursive calls on the stack. A binding to the GLFW library has been added to the extras distribution. Assemblies generated with the C# backend can now be signed with a strong name.

      •  02 Mar 2012 01:14

        Release Notes: This bugfix release fixes problems with building the library in the C# grade on Cygwin and with using GCC in C99 (or GNU99) mode. There are also some minor additions to the standard library.

        •  22 Dec 2011 04:44

          Release Notes: New features in this release include Unicode support, a new form of memory profiling, and the ability to initialize mutables using semipure or impure function calls. Support for using MSVC as the C compiler has been improved and support for using clang as the C compiler has been added. The Java backend is now compatible with Java 1.7. In addition, numerous performance improvements and bugfixes have been made.

          •  27 Apr 2011 10:19

            Release Notes: New language features include scopes that require a scoped goal to have a particular determinism and a scope that requires a switch to be complete. A new backend that generates C# has been added. Support for using frameworks on Mac OS X has been improved. A binding to the Cairo 2D graphics library has been added to the extras distribution. A module that provides lazy evaluation has been added to the standard library. String switches have been improved for the LLDS backend.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.