Projects / Mercury

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.

Tags
Licenses
Operating Systems
Implementation

RSS Recent releases

  •  22 Dec 2011 11:29

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 12:07

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.

  •  05 Oct 2010 07:14

Release Notes: A number of problems that caused the compiler to abort have been fixed, some broken RTTI operations in the Java grade have been fixed, and a workaround was included for a problem with GCC version 4.4.

  •  30 Aug 2010 10:11

Release Notes: This is a bugfix release.

  •  27 Jul 2010 22:00

Release Notes: A new language feature, trace goals, allows progress or logging messages to be printed in the middle of arbitrary computations. Some of the restrictions on type class instances have been lifted. Syntatic sugar for exception handlers has been added. There are new standard library modules that provide calenders, directed graphs, and utility procedures for writing parsers. The Java backend has been greatly improved. A new backend that generates Erlang has been added. Thread-local mutables are now supported. A debugger that works with the high-level C and Java backends has been added.

Screenshot

Project Spotlight

phpMyFAQ

A PHP-based FAQ system.

Screenshot

Project Spotlight

GNU recutils

A set of tools and libraries to access human-editable text-based databases called recfiles.