|
Home
News
Information
Documentation
Mailing Lists
Back-ends
Download
Related
Contact
Search
Bug Database
|
What is Mercury?
Logic programming languages have been around for more than twenty years.
Despite the expected advantages of a very high level programming
language based upon well developed theories of logic over conventional
programming languages (such as C, C++, Pascal and Ada) they have not had
significant impact on the computer industry.
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.
Latest News
| [09 February 2009] | RSS Feed
You can now receive Mercury news items via an RSS feed by subscribing
to the following URL:
http://www.mercury.csse.unimelb.edu.au/rss.xml
| | [05 February 2009] | New standard library modules
We have added two new modules to the standard library: parsing_utils and
calendar.
parsing_utils is a set of utilities to help with writing recursive
descent parsers. calendar contains utilities for working with dates
in the Gregorian calendar.
Both modules are available in the latest release of the day. | | [03 November 2008] | New paper
We have a new paper available from our
papers page that describes
some recent work on automatically introducing parallelism in Mercury programs
based on profiling data. | | [13 October 2008] | Google protocol buffers for Mercury
Google protocol buffers allows a extensible binary protocol to be
defined in a programming language independent .proto file.
The protoc compiler then generates APIs for the protocol in C++, Java
or Python.
protoc has recently been extended with basic support for Mercury.
The extension is available from
the protobuf-mercury
project site. | | [29 April 2008] | Currying of multi-moded predicates
We now support currying of multi-moded predicates where the mode to
use can be determined from the curried arguments.
For example one can now use expressions such as
list.foldl(list.foldl(int.plus), [[1, 2], [3, 4]], 0),
that previously had to be written using explicit lambda
expressions.
This feature was added by Mission Critical Australia. |
This list contains only the latest news items.
For older news items, see the
(complete news archive).
News is also available as an RSS feed at
http://www.mercury.csse.unimelb.edu.au/rss.xml.
|