[m-rev.] for review: update webpage for 11.01 release
Julien Fischer
juliensf at csse.unimelb.edu.au
Wed Apr 27 10:44:19 AEST 2011
Announce the 11.01 release.
w3/RELEASE_INFO:
Bump the version number and release branch tag.
w3/news/newsdb.inc:
Add a news entry for 11.01.
w3/download/include/release.inc:
Make 11.01 the stable release.
w3/download/release-11.01.php3:
w3/download/release-11.01-bugs.php3:
w3/download/release-11.01-contents.php3:
w3/download/include/release-11.01.inc:
w3/download/include/release-11.01-bugs.inc:
w3/download/include/release-11.01-contents.inc:
Add download pages for the 11.01 release.
w3/download/include/old-release.inc:
Move the 10.04 release details to here.
w3/download/include/current-release-bugs.inc:
Point to the 11.01 bugs.
w3/download/Makefile:
Generate files for the 11.01 release.
Julien.
Index: RELEASE_INFO
===================================================================
RCS file: /home/mercury/mercury1/repository/w3/RELEASE_INFO,v
retrieving revision 1.20
diff -u -r1.20 RELEASE_INFO
--- RELEASE_INFO 19 Dec 2010 14:19:01 -0000 1.20
+++ RELEASE_INFO 1 Apr 2011 18:20:43 -0000
@@ -1,16 +1,17 @@
# A descriptive name for the release. See mercury/VERSION
-RELEASE_VERSION=10.04.2
+RELEASE_VERSION=11.01
# A name for the next beta-release, e.g. 0.12.2-beta
# Note: only set this variable to a non-empty value if a source distribution
# for the next beta release is being built.
# NOTE: you also need to update the value of next_beta_version in
# include/download.inc when you modify this.
-NEXT_BETA_VERSION=11.01-beta
+#NEXT_BETA_VERSION=11.01.1-beta
+NEXT_BETA_VERSION=
# The CVS tag of the release branch.
# This is used to check out the documentation sources.
# We use the release *branch* tag, rather than the release tag,
# so that it will pick up any fixes to the documentation
# that have occurred after the release was made.
-RELEASE_TAG=version-10_04-branch
+RELEASE_TAG=version-11_01-branch
Index: download/Makefile
===================================================================
RCS file: /home/mercury/mercury1/repository/w3/download/Makefile,v
retrieving revision 1.14
diff -u -r1.14 Makefile
--- download/Makefile 19 Jul 2010 06:07:39 -0000 1.14
+++ download/Makefile 24 Apr 2011 15:55:43 -0000
@@ -20,6 +20,7 @@
release-0.12.html \
release-0.13.html \
release-10.04.html \
+ release-11.01.html \
release-0.3-bugs.html \
release-0.4-bugs.html \
release-0.5-bugs.html \
@@ -33,6 +34,7 @@
release-0.12-bugs.html \
release-0.13-bugs.html \
release-10.04-bugs.html \
+ release-11.01-bugs.html \
release-0.3-contents.html \
release-0.4-contents.html \
release-0.5-contents.html \
@@ -45,9 +47,10 @@
release-0.12-contents.html \
release-0.13-contents.html \
release-10.04-contents.html \
+ release-11.01-contents.html \
rotd.html
-current-release-bugs.html: release-10.04-bugs.inc
+current-release-bugs.html: release-11.01-bugs.inc
install: local_install
Index: download/release-11.01-bugs.php3
===================================================================
RCS file: download/release-11.01-bugs.php3
diff -N download/release-11.01-bugs.php3
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ download/release-11.01-bugs.php3 24 Apr 2011 16:00:17 -0000
@@ -0,0 +1,11 @@
+<HTML>
+<?
+ $menu="Download";
+ $submenu="Current Release";
+ $title="Release 11.01 known problems";
+ $dir="download";
+ $root="..";
+ $include="release-11.01-bugs.inc";
+ include "$root/include/template.inc"
+?>
+</HTML>
Index: download/release-11.01-contents.php3
===================================================================
RCS file: download/release-11.01-contents.php3
diff -N download/release-11.01-contents.php3
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ download/release-11.01-contents.php3 24 Apr 2011 15:59:21 -0000
@@ -0,0 +1,11 @@
+<HTML>
+<?
+ $menu="Download";
+ $submenu="Current Release";
+ $title="Release 11.01 Contents";
+ $dir="download";
+ $root="..";
+ $include="release-11.01-contents.inc";
+ include "$root/include/template.inc"
+?>
+</HTML>
Index: download/release-11.01.php3
===================================================================
RCS file: download/release-11.01.php3
diff -N download/release-11.01.php3
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ download/release-11.01.php3 24 Apr 2011 15:58:00 -0000
@@ -0,0 +1,11 @@
+<HTML>
+<?
+ $menu="Download";
+ $submenu="Current Release";
+ $title="Release 11.01 Notes";
+ $dir="download";
+ $root="..";
+ $include="release-11.01.inc";
+ include "$root/include/template.inc"
+?>
+</HTML>
Index: download/include/current-release-bugs.inc
===================================================================
RCS file: /home/mercury/mercury1/repository/w3/download/include/current-release-bugs.inc,v
retrieving revision 1.3
diff -u -r1.3 current-release-bugs.inc
--- download/include/current-release-bugs.inc 25 Feb 2001 14:56:21 -0000 1.3
+++ download/include/current-release-bugs.inc 24 Apr 2011 15:39:32 -0000
@@ -1,3 +1,3 @@
<?
- include "$root/download/include/release-0.10-bugs.inc";
+ include "$root/download/include/release-11.01-bugs.inc";
?>
Index: download/include/old-release.inc
===================================================================
RCS file: /home/mercury/mercury1/repository/w3/download/include/old-release.inc,v
retrieving revision 1.16
diff -u -r1.16 old-release.inc
--- download/include/old-release.inc 19 Jul 2010 06:07:39 -0000 1.16
+++ download/include/old-release.inc 6 Apr 2011 23:32:54 -0000
@@ -64,6 +64,115 @@
Please note, however, that the source and binaries for these
releases are often no longer available from the FTP site.
+<h2>Release 10.04.2</h2>
+
+Mercury 10.04.2 was released on October 5, 2010.
+
+<h3>Information</h3>
+
+<ul>
+<li> <a href = "release-10.04.html">
+ Release notes for 10.04
+ </a>
+<li> <a href = "release-10.04-contents.html">
+ Contents of release 10.04 distribution
+ </a>
+<li> <a href = "release-10.04-bugs.html">
+ Known problems with release 10.04
+ </a>
+<li> <a href = "limitations.html">
+ Limitations of the current release.
+ </a>
+</ul>
+
+<h3>Supported Platforms</h3>
+
+The latest release is known to work on the following platforms:
+
+<p>
+
+<ul>
+ <li> x86 and x86-64 machines running Linux
+ <li> x86 machines running Microsoft Windows XP
+ <li> Apple Intel machines (both x86 and x86-64) running Mac OS X 10.5 and above
+</ul>
+
+<p>
+
+It should be pretty easy to port to any sufficiently Unix-like system.
+
+<h3>What do I need?</h3>
+
+<ul>
+<li> For Unix systems, you will need the following:<p>
+ <ol>
+ <li> <a href="http://gcc.gnu.org">GNU C (gcc)</a>
+ <p>
+ GCC version 3.4.x or later is required.
+ <p>
+ GCC 4.0 will NOT work.
+ It has bugs that cause
+ internal compiler errors when compiling the C code generated by the
+ Mercury compiler.
+ <p>
+ It is also possible to use other C compilers, such as
+ <a href="http://www.cs.princeton.edu/software/lcc/">lcc</a>,
+ but we don't recommend that.
+ <p>
+ <li> GNU make (version 3.69 or higher).
+ </ol>
+
+ <p>
+
+<li> For Windows,<p>
+ <ol>
+ <li> You will need a Unix-like enviroment such as <a href="http://www.cygwin.com/">Cygwin</a>,
+ or <a href="http://www.mingow/org/">MinGW and MSYS</a>. Both provide GNU C and GNU make.
+ <li> You can optionally use
+ <a href="http://msdn.microsoft.com/visualc/default.asp">
+ Microsoft Visual C</a> rather than GNU C.<p>
+ </ol>
+</ul>
+
+<h3><a name="source">Source Distribution</a></h3>
+
+The main "mercury-compiler" source distribution is about 25 Mb.
+This includes the compiler, standard library,
+debugger, profilers, and other tools.
+
+<p>
+
+There is also a "mercury-extras" distribution which contains a number
+of useful additional libraries. This is distributed separately,
+mainly for copyright reasons (some of the additional libraries do
+not meet the Debian Free Software Guidelines).
+We recommend that everyone who downloads the "compiler"
+distribution should also download the "extras" distribution.
+
+<p>
+
+Finally there is also a "mercury-tests" distribution which contains our
+test suite. This may be useful if you are modifying the compiler,
+or porting it to a new system.
+
+<dl>
+<dt> Compiler (25 Mb)
+<dd>
+<? links_to_file("mercury-compiler-10.04.2.tar.gz", "yes") ?>
+<p>
+
+<dt> Extras (750 kb)
+<dd>
+<? links_to_file("mercury-extras-10.04.2.tar.gz", "no") ?>
+<p>
+
+<dt> Tests (1 Mb)
+<dd>
+<? links_to_file("mercury-tests-10.04.2.tar.gz", "no") ?>
+</dl>
+
+
+
<h2>Release 0.13.1</h2>
Mercury 0.13.1 was released on December 1, 2006.
Index: download/include/release-11.01-bugs.inc
===================================================================
RCS file: download/include/release-11.01-bugs.inc
diff -N download/include/release-11.01-bugs.inc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ download/include/release-11.01-bugs.inc 24 Apr 2011 15:27:31 -0000
@@ -0,0 +1,6 @@
+<h2>Release 11.01 - Known Problems</h2>
+
+A list of known bugs may be found in our
+<a href="http://bugs.mercury.csse.unimelb.edu.au">Bug Database</a>.
+
+<hr>
Index: download/include/release-11.01-contents.inc
===================================================================
RCS file: download/include/release-11.01-contents.inc
diff -N download/include/release-11.01-contents.inc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ download/include/release-11.01-contents.inc 26 Apr 2011 14:47:58 -0000
@@ -0,0 +1,55 @@
+<h2>Release 11.01 - Contents</h2>
+
+The Mercury distribution is split into three parts.
+The "mercury-compiler" distribution contains:
+
+<ul>
+ <li>an autoconfiguration script
+ <li>the Mercury source for the compiler
+ <li>the Mercury source for the standard library
+ <li>the automatically generated C source for the compiler
+ and the standard library
+ <li>the runtime system (written in C)
+ <li>Hans Boehm's conservative garbage collector for C
+ <li>an integrated procedural and declarative debugger
+ <li>some profilers
+ <li>some utility programs, including a make front-end for Mercury
+ with automatic dependency recomputation
+ <li>the Mercury language reference manual
+ <li>the Mercury library reference manual
+ <li>the Mercury user's guide
+ <li>the Mercury frequently asked questions list
+ <li>the Prolog to Mercury transition guide
+ <li>some sample Mercury programs
+</ul>
+
+<p>
+
+The "mercury-extras" distribution contains some extra libraries for:
+
+<ul>
+ <li>dynamic linking
+ <li>backtrackable (trailed) destructive update
+ <li>arithmetic
+ <ul>
+ <li>arithmetic on complex and imaginary numbers
+ </ul>
+ <li>UIs:
+ <ul>
+ <li>graphics using Tk, OpenGL/GLUT, Xlib, Allegro or Cairo.
+ <li>text interfaces using curses
+ <li>processing HTML forms using the CGI interface
+ </ul>
+ <li>interfacing:
+ <ul>
+ <li>XML parsing
+ <li>POSIX interface
+ <li>an ODBC database interface
+ </ul>
+ <li>the Morphine trace analysis system
+ <li>two curses bindings, one more complete than the other
+ <li>a general purpose lexer
+ <li>Moose, a parser generator for Mercury.
+</ul>
+
+The "mercury-tests" distribution contains a test suite.
Index: download/include/release-11.01.inc
===================================================================
RCS file: download/include/release-11.01.inc
diff -N download/include/release-11.01.inc
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ download/include/release-11.01.inc 24 Apr 2011 16:11:34 -0000
@@ -0,0 +1,182 @@
+<h2>New in release 11.01 of the Mercury distribution</h2>
+
+Upcoming changes to the Mercury standard library:
+<p>
+In the next release after 11.01 we intend to change the argument order of
+many of the predicates in the standard library so as to make them more
+conducive to the use of state variable notation.
+
+<p>
+
+For example, map.insert/4 will be changed from
+<pre>
+ map.insert(map(K, V)::in, K::in, V::in, map(K, V)::out) is semidet.
+</pre>
+to
+<pre>
+ map.insert(K::in, V::in, map(K, V)::in, map(K, V)::out) is semidet.
+</pre>
+
+<p>
+
+As part of this change, the sv* modules will be deprecated; they will
+be removed from the library in a later release.
+
+<p>
+
+Note that none of these upcoming changes affect the 11.01 release.
+
+<h3>HIGHLIGHTS</h3>
+
+Changes to the Mercury language:
+
+<ul>
+<li> We have added two new kinds of scopes to the language.
+<p>
+ A scope introduced by one of the new keywords require_det, require_semidet,
+ require_multi, require_nondet, require_cc_multi, require_cc_nondet,
+ require_erroneous and require_failure, as the name implies, requires
+ the goal inside the scope to have the given determinism.
+<p>
+ A scope introduced by the keyword require_complete_switch requires the
+ goal inside the scope, if it is a switch on the variable named by the scope,
+ to be a complete switch, i.e. to have arms for all the function symbols
+ in the type of the switched-on variable.
+</ul>
+
+<p>
+Changes to the Mercury standard library:
+
+<ul>
+<li>We have added semidet modes for hash_table.fold/4 and
+ version_hash_table.fold/4.
+
+<li>We have added new predicates and functions added to the assoc_list module.
+ The predicates map_keys_only/3 map_values_only/3 and map_values/3 complement
+ the functions of the same name. The predicates filter/3, negated_filter/3,
+ filter/4, merge/3, which also have function versions, do jobs very similar
+ to the predicates of the same name in the list module, but do the relevant
+ operations on keys instead of entire list elements.
+
+<li>We have moved the lazy evaluation module out of the extras distribution and
+ into a new standard library module called `lazy'. It has also been made
+ backend-agnostic.
+
+<li>We have made changes to the list module of the standard library:
+ <ul>
+ <li>We added a new predicate list.member_index0/3. It is like list.member/2
+ except that it also takes a parameter representing the zero-based index of
+ the element within the list.
+
+ <li>We added a new predicate list.map3_foldl/7 which maps over a list producing
+ three lists and one folded value.
+
+ <li>We added semidet modes with unique accumulators for list.foldl3/8,
+ list.foldl4/10, list.foldl5/12, and list.foldl6/14.
+ </ul>
+
+<li>We have added the predicates divide/4 and divide_by_set/4 to the tree_bitset
+ module of the standard library.
+
+<li>We have added the predicates set_ctree234.member/2 and
+ set_ctree234.non_empty/1. We have add the function
+ set_ctree234.from_list/1.
+
+<li>We have added the the predicate set_bbbtree.count/2 and the
+ function set_bbbtree.count/1. These replace the predicate
+ set_bbbtree.size/2 which is now deprecated.
+
+<li>We have added the predicate set_ordlist.non_empty/1.
+
+<li>We have added the predicate set_tree234.non_empty/1 and the
+ function set_tree234.from_list/1.
+
+<li>We have added the predicates set_unordlist.non_empty/1 and
+ set_unordlist.count/2, and the function set_unordlist.count/1.
+
+<li>All of the modules in the standard library that implement the set ADT,
+ (set, set_ordlist, set_unordlist, set_bbbtree, set_tree234,
+ and set_ctree234), now support folding over sets with up to six
+ accumulators. Modes that provide unique and mostly-unique accumulators
+ for set fold have also been added.
+
+<li>We have made the following changes to the array module of the standard
+ library:
+
+ <ul>
+ <li>We have added the functions unsafe_elem/2 and append/2.
+
+ <li>We have added the predicates svset/4, unsafe_svset/4, foldl2/4, foldl2/6,
+ foldr/4, foldr2/6, map_foldl/5, map_corresponding_foldl/6, and member/2.
+ </ul>
+
+<li>We have added the predicates version_array.foldl2/6, version_array.foldr/4,
+ and version_array.foldr2/6 to the standard library.
+
+<li>We have added semidet modes with unique and mostly-unique accumulators for
+ the following predicates:
+ <ul>
+ <li>bimap.foldl2/6
+ <li>bimap.foldl3/8
+ <li>cord.foldl_pred/4
+ <li>cord.map_foldl/5
+ <li>list.map_corresponding_foldl2/8
+ <li>list.map_corresponding_foldl3/10
+ <li>list.map_corresponding3_foldl/7
+ <li>map.foldl3/8
+ </ul>
+
+<li>We have added the predicate unsorted_aggregate2/6 to the solutions module
+ of the standard library.
+
+<li>We have added several predicates and functions to the require module
+ of the standard library. The predicates sorry/2 and sorry/3 report
+ the absence of a feature, while the predicates unexpected/2 and unexpected/3
+ report an internal error in the program; all have function versions too.
+ The predicate expect/3 calls unexpected if a condition isn't satisfied.
+ We now have expect/4 as well as expect/3. For expect/4 as well as expect/3,
+ the first and last arguments are the expected condition and the error message
+ respectively, but with expect/4, there are two arguments in the middle
+ to specify the location of the error (normally the name of the module
+ and of the predicate respectively). We also added expect_not/3 and
+ expect_not/4, which are like expect/3 and expect/4 respectively,
+ except they expect the condition to be *false*, not true.
+</ul>
+
+<p>
+Changes to the Mercury compiler:
+
+<ul>
+<li>We have added a new backend that generates C#.
+
+<li>Support for building and linking against frameworks on Mac OS X has been improved.
+</ul>
+
+<p>
+Changes to the extras distribution:
+
+<ul>
+<li>We have added a binding to the Cairo 2D graphics library.
+</ul>
+
+
+<h3>DETAILED LISTING</h3>
+
+<p>
+Changes to the Mercury compiler:
+
+<ul>
+<li>We have added a new backend that generates C#.
+ For more details, see the README.CSharp.
+<p>
+ The new backend was contributed by
+ <a href="http://www.missioncriticalit.com/">Mission Critical IT</a>.
+
+<li>We have added two new options, `--framework' and `--framework-directory'
+ in order to simplify building and linking against frameworks on Mac OS X.
+ (-F is supported as a synonym for `--framework-directory'.)
+
+<li>Switches on strings in which all output arguments in all switch arms are
+ bound to constants are now implemented using lookup tables on the LLDS
+ back end. This should make the generated code more compact as well as faster.
+</ul>
Index: download/include/release.inc
===================================================================
RCS file: /home/mercury/mercury1/repository/w3/download/include/release.inc,v
retrieving revision 1.52
diff -u -r1.52 release.inc
--- download/include/release.inc 8 Nov 2010 23:35:54 -0000 1.52
+++ download/include/release.inc 27 Apr 2011 00:36:29 -0000
@@ -60,19 +60,19 @@
?>
<h2><a name="info">Current Release</a></h2>
-Mercury 10.04.2 was released on October 5, 2010.
+Mercury 11.01 was released on April 27, 2011.
<h3>Information</h3>
<ul>
-<li> <a href = "release-10.04.html">
- Release notes for 10.04
+<li> <a href = "release-11.01.html">
+ Release notes for 11.01
</a>
-<li> <a href = "release-10.04-contents.html">
- Contents of release 10.04 distribution
+<li> <a href = "release-11.01-contents.html">
+ Contents of release 11.01 distribution
</a>
-<li> <a href = "release-10.04-bugs.html">
- Known problems with release 10.04
+<li> <a href = "release-11.01-bugs.html">
+ Known problems with release 11.01
</a>
<li> <a href = "limitations.html">
Limitations of the current release.
@@ -87,7 +87,8 @@
<ul>
<li> x86 and x86-64 machines running Linux
- <li> x86 machines running Microsoft Windows XP
+ <li> x86 and x86-64 machines running Microsoft Windows XP 3, Windows 7,
+ and Windows Server 2008 R2.
<li> Apple Intel machines (both x86 and x86-64) running Mac OS X 10.5 and above
</ul>
@@ -152,22 +153,19 @@
<dl>
<dt> Compiler (25 Mb)
<dd>
-<? links_to_file("mercury-compiler-10.04.2.tar.gz", "yes") ?>
+<? links_to_file("mercury-compiler-11.01.tar.gz", "yes") ?>
<p>
<dt> Extras (750 kb)
<dd>
-<? links_to_file("mercury-extras-10.04.2.tar.gz", "no") ?>
+<? links_to_file("mercury-extras-11.01.tar.gz", "no") ?>
<p>
<dt> Tests (1 Mb)
<dd>
-<? links_to_file("mercury-tests-10.04.2.tar.gz", "no") ?>
+<? links_to_file("mercury-tests-11.01.tar.gz", "no") ?>
</dl>
<h3><a name="binaries">Binary Distributions</a></h3>
-The <a href="http://code.google.com/p/winmercury/">winmercury</a> project
-creates binary distributions of Mercury optimized for use on the Windows platform.
-
-There are no other binary distributions for 10.04.2 currently available.
+There are no binary distributions for 11.01 currently available.
Index: news/newsdb.inc
===================================================================
RCS file: /home/mercury/mercury1/repository/w3/news/newsdb.inc,v
retrieving revision 1.127
diff -u -r1.127 newsdb.inc
--- news/newsdb.inc 23 Dec 2010 04:43:30 -0000 1.127
+++ news/newsdb.inc 26 Apr 2011 14:35:02 -0000
@@ -21,6 +21,14 @@
*/
$newsdb = array(
+"27th April 2011" => array("New release",
+
+"We are pleased to announce the release of version 11.01 of the
+Mercury system. The new release can be downloaded
+<a href=\"download/release.html\">here</a>. For a list of the changes since
+the last version see the <a href=\"download/release-11.01.html\">release notes</a>."
+),
+
"23rd December 2010" => array("11.01 beta release available",
"Beta releases of Mercury 11.01 are available <a href=\"download.html\">here</a>.
"),
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to: mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions: mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------
More information about the reviews
mailing list