*** empty log message ***
[bpt/guile.git] / NEWS
diff --git a/NEWS b/NEWS
index 062bb14..6004914 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -22,6 +22,28 @@ Example:
 
 * Changes to Scheme functions and syntax
 
+** Module (ice-9 optargs) now uses keywords instead of `#&'.
+
+Instead of #&optional, #&key, etc you should now use #:optional,
+#:key, etc.  Since #:optional is a keyword, you can write it as just
+:optional when (read-set! keywords 'prefix) is active.
+
+The old reader syntax `#&' is still supported, but deprecated.  It
+will be removed in the next release.
+
+** Backward incompatible change: eval EXP ENVIRONMENT-SPECIFIER
+
+`eval' is now R5RS, that is it takes two arguments.
+The second argument is an environment specifier, i.e. either
+
+  (scheme-report-environment 5)
+  (null-environment 5)
+  (interaction-environment)
+
+or
+
+  any module.
+
 ** New define-module option: pure
 
 Tells the module system not to include any bindings from the root
@@ -55,6 +77,36 @@ Example:
 
 * Changes to the scm_ interface
 
+** New function: scm_done_free (long size)
+
+This function is the inverse of scm_done_malloc.  Use it to report the
+amount of smob memory you free.  The previous method, which involved
+calling scm_done_malloc with negative argument, was somewhat
+unintuitive (and is still available, of course).
+
+** New global variable scm_gc_running_p introduced.
+
+Use this variable to find out if garbage collection is being executed.  Up to
+now applications have used scm_gc_heap_lock to test if garbage collection was
+running, which also works because of the fact that up to know only the garbage
+collector has set this variable.  But, this is an implementation detail that
+may change.  Further, scm_gc_heap_lock is not set throughout gc, thus the use
+of this variable is (and has been) not fully safe anyway.
+
+** Deprecated macros:  SCM_OUTOFRANGE, SCM_NALLOC, SCM_HUP_SIGNAL, 
+SCM_INT_SIGNAL, SCM_FPE_SIGNAL, SCM_BUS_SIGNAL, SCM_SEGV_SIGNAL, 
+SCM_ALRM_SIGNAL, SCM_GC_SIGNAL, SCM_TICK_SIGNAL, SCM_SIG_ORD, 
+SCM_ORD_SIG, SCM_NUM_SIGS
+
+Use SCM_ASSERT_RANGE or SCM_VALIDATE_XXX_RANGE instead of SCM_OUTOFRANGE.
+Use scm_memory_error instead of SCM_NALLOC.
+
+** Removed function:  scm_struct_init
+
+** Deprecated function:  scm_call_catching_errors
+
+Use scm_catch or scm_lazy_catch from throw.[ch] instead.
+
 \f
 Changes since Guile 1.3.4:
 
@@ -2651,9 +2703,9 @@ inherits the print-state of OLD-PORT.
 
 ** New constants: vtable-index-layout, vtable-index-vtable, vtable-index-printer
 
-** There is now a fourth (optional) argument to make-vtable-vtable and
-   make-struct when constructing new types (vtables).  This argument
-   initializes field vtable-index-printer of the vtable.
+** There is now a third optional argument to make-vtable-vtable
+   (and fourth to make-struct) when constructing new types (vtables).
+   This argument initializes field vtable-index-printer of the vtable.
 
 ** The detection of circular references has been extended to structs.
 That is, a structure that -- in the process of being printed -- prints