for review: update NEWS, RELEASE_NOTES, configure.in

Fergus Henderson fjh at cs.mu.OZ.AU
Wed Nov 11 17:40:33 AEDT 1998


Update a few files in preparation for release 0.8.

NEWS:
	Put the main sections in reverse chronological order,
	i.e. 0.8, then 0.7.3, then 0.7.2, rather than 0.7.2, 0.7.3, then 0.8.
	This is better since the changes in 0.7.2 and 0.7.3 are old news.

	Also a few minor changes, such as deleting the XXX about
	`pragma import' and nondet `pragma c_code' not being documented.

RELEASE_NOTES:
	Update for 0.8.

configure.in:
	Update the test for recently-added features to test for
	`promise_only_solution'.  That should be recent enough
	to ensure that we can bootstrap.

Index: NEWS
===================================================================
RCS file: /home/mercury1/repository/mercury/NEWS,v
retrieving revision 1.124
diff -u -r1.124 NEWS
--- NEWS	1998/11/09 03:59:52	1.124
+++ NEWS	1998/11/11 06:22:35
@@ -1,232 +1,5 @@
-NEWS for Mercury release 0.7.2
-------------------------------
-
[... lots of deleted lines manually edited out of this diff...]
-
-NEWS since release 0.7.3:
--------------------------
+NEWS for release 0.8:
+---------------------
 
 Changes to the Mercury language:
 ********************************
@@ -279,9 +52,6 @@
   of a C function.  `pragma import' is like the inverse of the
   existing `pragma export' declaration.
 
-  XXX These features are not yet documented.
-  XXX (See tests/hard_coded/pragma_import.m for some examples.)
-
 * We have added support for automatic tabling (memoization).
 
   See the "Tabled evaluation" subsection of the "Implementation-dependent
@@ -411,7 +181,7 @@
   To disable array bounds checking, you must compile with
   `--intermodule-optimization' enabled and you must also
   define the C macro ML_OMIT_ARRAY_BOUNDS_CHECKS (e.g. by using
-  `MGNUCFLAGS=-DML_OMIT_ARRAY_BOUNDS_CHECKS' in your Mmake file). 
+  `MGNUCFLAGS=-DML_OMIT_ARRAY_BOUNDS_CHECKS' in your Mmakefile). 
   [XXX we also need to fix problems with intermodule inlining heuristics.]
 
 * Domain checking for higher mathematical operations can now be disabled.
@@ -419,23 +189,27 @@
   To disable domain  checking, you must compile with
   `--intermodule-optimization' enabled and you must also
   define the C macro ML_OMIT_MATH_DOMAIN_CHECKS (e.g. by using
-  `MGNUCFLAGS=-DML_OMIT_MATH_DOMAIN_CHECKS' in your Mmake file). 
+  `MGNUCFLAGS=-DML_OMIT_MATH_DOMAIN_CHECKS' in your Mmakefile). 
 
   See the Mercury Library Reference Manual for details.
 
 * We've added some primitive debugging support.
 
-  The runtime system now includes a rudimentary "four-port" style debugger
+  The runtime system now includes a "four-port" style debugger
   (actually with eight ports).
   To use this debugger, you need to build your program with debugging
   enabled, which is normally done using the `--debug' (or `-g') option,
   and then run it using the `mdb' command, e.g. `mdb a.out'.
-  Type `h' at the `mdb>' prompt for a list of the available commands.
+  Type `h' at the `mdb>' prompt for a list of the available commands,
+  or see the "Debugging" chapter of the Mercury User's Guide for further
+  details.
 
 * The support for debugging using Prolog now includes support for
   detailed control over how terms are printed out during debugging.
 
   See the "Using Prolog" section of the Mercury User's Guide for details.
+  However, for most purposes we now recommend using the native Mercury
+  debugger rather than debugging using Prolog.
 
 * The Mercury profiler has a number of new features.
 
@@ -492,6 +266,8 @@
   new option `--output-grade-string' which prints the canonical grade string
   for the set of options with which the compiler was invoked.
 
+* Mmake now runs a bit faster, particularly on Windows.
+
 * We've made a few small improvements to the efficiency of the generated code.
 
 * The system has been ported to Linux/PPC.
@@ -502,11 +278,239 @@
 
 * We've updated to version 4.13alpha2 of the Boehm garbage collector.
 
-* Numerous bug fixes.
-
 * We've made the MERCURY_OPTIONS environment variable somewhat easier to use.
 
 * Mtags is now able to produce tags for typeclass declarations.  It is
   also able to produce tags files in the extended format supported by
   recent versions of Vim and Elvis.  Do `mtags --help' for more
   information.
+
+* Numerous bug fixes.
+
+
+NEWS for Mercury release 0.7.3
+------------------------------
+
[... lots of added lines manually edited out of this diff...]
[... These are the same as the ones deleted above ...]

Index: RELEASE_NOTES
===================================================================
RCS file: /home/mercury1/repository/mercury/RELEASE_NOTES,v
retrieving revision 1.22
diff -u -r1.22 RELEASE_NOTES
--- RELEASE_NOTES	1997/08/14 15:54:08	1.22
+++ RELEASE_NOTES	1998/11/11 06:32:21
@@ -1,5 +1,5 @@
 
-We are pleased to announce the release of version 0.7 of the Mercury system.
+We are pleased to announce the release of version 0.8 of the Mercury system.
 
 Mercury is a new general-purpose programming language, designed and
 implemented by a small group of researchers at the University of
@@ -146,7 +146,7 @@
 IRIX 5.x, OSF/1.1, and Linux, and is also known to run on Ultrix 4.3,
 BSDI 1.1, AIX, and HPUX; it should run without too many changes on
 other Unix variants as well.  It also runs on Windows 95 and Windows
-NT, using the gnu-win32 library.  If you do encounter any problems,
+NT, using the Cygwin library.  If you do encounter any problems,
 please report them to <mercury-bugs at cs.mu.oz.au> (see the BUGS file).
 
 The current source distribution uses gcc as the compiler.  We require gcc
@@ -161,6 +161,7 @@
         and the standard library
      o  the runtime system (written in C)
      o  Hans Boehm's conservative garbage collector for C
+     o  a debugger
      o  a profiler
      o  some utility programs, including a make front-end for Mercury
 	with automatic dependency recomputation
@@ -174,6 +175,10 @@
 	- processing HTML forms using the CGI interface
 	- arithmetic on complex and imaginary numbers
 	- graphics using Tk and OpenGL
+	- exception handling
+	- backtrackable (trailed) destructive update
+	- an ODBC database interface
+	- a CLP(R) interface, i.e. constraint solving over real numbers
      o  a test suite
 
 The Mercury distribution is available via anonymous ftp or WWW
@@ -181,8 +186,17 @@
 
 	Australia:
 		ftp://turiel.cs.mu.oz.au/pub/mercury
+
+We hope to be able to make it available at the following sites
+too, eventually:
+
+	Sunsite and mirrors: (source distribution only)
+		ftp://sunsite.unc.edu/pub/Linux/Incoming
+		ftp://sunsite.unc.edu/pub/linux/devel/lang/mercury
+
 	USA:
 		ftp://ftp.cs.sunysb.edu/pub/XSB/mercury
+
 	Europe:
 		ftp://ftp.csd.uu.se/pub/Mercury
 
Index: configure.in
===================================================================
RCS file: /home/mercury1/repository/mercury/configure.in,v
retrieving revision 1.141
diff -u -r1.141 configure.in
--- configure.in	1998/11/02 10:02:38	1.141
+++ configure.in	1998/11/09 15:13:25
@@ -81,11 +81,13 @@
 		:- import_module io.
 		:- pred main(io__state::di, io__state::uo) is det.
 		:- implementation.
-		main --> io__write_string("Hello, world\n").
+		main --> 
+			io__write_string(promise_only_solution(hello)).
 
-		:- impure pred foo(int).
-		:- mode foo(in) is semidet.
-		:- pragma c_code(foo(_X::in), "").
+		:- pred hello(string).
+		:- mode hello(out) is cc_multi.
+		hello("Hello, world\n").
+		hello("Hello, world\n").
 EOF
 	if
 	 	 echo $BOOTSTRAP_MC conftest >&AC_FD_CC 2>&1 &&

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "Binaries may die
WWW: <http://www.cs.mu.oz.au/~fjh>  |   but source code lives forever"
PGP: finger fjh at 128.250.37.3        |     -- leaked Microsoft memo.



More information about the developers mailing list