*** empty log message ***
[bpt/guile.git] / NEWS
diff --git a/NEWS b/NEWS
index 59a973f..d5ea8fb 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -13,16 +13,29 @@ Changes since Guile 1.4:
 *** Macros removed
 
   SCM_INPORTP, SCM_OUTPORTP SCM_ICHRP, SCM_ICHR, SCM_MAKICHR
-  SCM_SETJMPBUF SCM_NSTRINGP SCM_NRWSTRINGP SCM_NVECTORP
+  SCM_SETJMPBUF SCM_NSTRINGP SCM_NRWSTRINGP SCM_NVECTORP SCM_DOUBLE_CELLP
 
-*** Functions removed
-
-  scm_sysmissing
+*** C Functions removed
 
+  scm_sysmissing scm_tag scm_tc16_flo scm_tc_flo
+  scm_fseek - replaced by scm_seek.
   gc-thunk - replaced by after-gc-hook.
+  gh_int2scmb - replaced by gh_bool2scm.
+  scm_tc_dblr - replaced by scm_tc16_real.
+  scm_tc_dblc - replaced by scm_tc16_complex.
+  scm_list_star - replaced by scm_cons_star.
+
+*** scheme functions removed:
+
+  tag - no replacement.
+  fseek - replaced by seek.
+  list* - replaced by cons*.
 
 ** New SRFI modules have been added:
 
+SRFI-0 `cond-expand' is now supported in Guile, without requiring
+using a module.
+
 (srfi srfi-2) exports and-let*.
 
 (srfi srfi-6) is a dummy module for now, since guile already provides
@@ -33,12 +46,42 @@ Changes since Guile 1.4:
 
 (srfi srfi-9) exports define-record-type.
 
+(srfi srfi-10) exports define-reader-ctor and implements the reader
+  extension #,().
+
 (srfi srfi-11) exports let-values and let*-values.
 
 (srfi srfi-13) implements the SRFI String Library.
 
 (srfi srfi-14) implements the SRFI Character-Set Library.
 
+(srfi srfi-17) implements setter and getter-with-setter and redefines
+  some accessor procedures as procedures with getters. (such as car,
+  cdr, vector-ref etc.)
+
+(srfi srfi-19) implements the SRFI Time/Date Library.
+
+** New scripts / "executable modules"
+
+Subdirectory "scripts" contains Scheme modules that are packaged to
+also be executable as scripts.  At this time, these scripts are available:
+
+     display-commentary
+     doc-snarf
+     generate-autoload
+     punify
+     use2dot
+
+See README there for more info.
+
+These scripts can be invoked from the shell with the new program
+"guile-tools", which keeps track of installation directory for you.
+For example:
+
+     $ guile-tools display-commentary srfi/*.scm
+
+guile-tools is copied to the standard $bindir on "make install".
+
 ** New module (ice-9 stack-catch):
 
 stack-catch is like catch, but saves the current state of the stack in
@@ -132,6 +175,38 @@ future.
 Alternatively, if guile-scsh is installed, the (scsh rdelim) module
 can be used for similar functionality.
 
+** New module (ice-9 rw)
+
+This is a subset of the (scsh rw) module from guile-scsh.  Currently
+it defines a single procedure:
+
+** New function: read-string!/partial str [port_or_fdes [start [end]]]
+
+     Read characters from an fport or file descriptor into a string
+     STR.  This procedure is scsh-compatible and can efficiently read
+     large strings.  It will:
+
+        * attempt to fill the entire string, unless the START and/or
+          END arguments are supplied.  i.e., START defaults to 0 and
+          END defaults to `(string-length str)'
+
+        * use the current input port if PORT_OR_FDES is not supplied.
+
+        * read any characters that are currently available, without
+          waiting for the rest (short reads are possible).
+
+        * wait for as long as it needs to for the first character to
+          become available, unless the port is in non-blocking mode
+
+        * return `#f' if end-of-file is encountered before reading any
+          characters, otherwise return the number of characters read.
+
+        * return 0 if the port is in non-blocking mode and no characters
+          are immediately available.
+
+        * return 0 if the request is for 0 bytes, with no end-of-file
+          check
+
 ** New module (ice-9 match)
 
 This module includes Andrew K. Wright's pattern matcher:
@@ -208,7 +283,7 @@ to write the empty list as a literal constant is to use quote: "'()".
 ** Auto-loading of compiled-code modules is deprecated.
 
 Guile used to be able to automatically find and link a shared
-libraries to satisfy requests for a module.  For example, the module
+library to satisfy requests for a module.  For example, the module
 `(foo bar)' could be implemented by placing a shared library named
 "foo/libbar.so" (or with a different extension) in a directory on the
 load path of Guile.
@@ -310,14 +385,14 @@ objects are usually permanent.
 ** Escape procedures created by call-with-current-continuation now
 accept any number of arguments, as required by R5RS.
 
-** New function `call-with-deprecation'
+** New function `issue-deprecation-warning'
 
-Call a thunk, displaying a deprecation message at the first call:
+This function is used to displaying the deprecation messages that are
+controlled by GUILE_WARN_DEPRECATION as explained in the README.
 
   (define (id x)
-    (call-with-deprecation "`id' is deprecated.  Use `identity' instead."
-      (lambda ()
-       (identity x))))
+    (issue-deprecation-warning "`id' is deprecated.  Use `identity' instead.")
+    (identity x))
 
   guile> (id 1)
   ;; `id' is deprecated.  Use `identity' instead.
@@ -325,6 +400,13 @@ Call a thunk, displaying a deprecation message at the first call:
   guile> (id 1)
   1
 
+** New syntax `begin-deprecated'
+
+When deprecated features are included (as determined by the configure
+option --enable-deprecated), `begin-deprecated' is identical to
+`begin'.  When deprecated features are excluded, it always evaluates
+to `#f', ignoring the body forms.
+
 ** New function `make-object-property'
 
 This function returns a new `procedure with setter' P that can be used
@@ -407,33 +489,6 @@ Guile.
 
 Instead, use scm_c_memq or scm_memq, scm_memv, scm_member.
 
-** New function: read-string!/partial str [port_or_fdes [start [end]]]
-
-     Read characters from an fport or file descriptor into a string
-     STR.  This procedure is scsh-compatible and can efficiently read
-     large strings.  It will:
-
-        * attempt to fill the entire string, unless the START and/or
-          END arguments are supplied.  i.e., START defaults to 0 and
-          END defaults to `(string-length str)'
-
-        * use the current input port if PORT_OR_FDES is not supplied.
-
-        * read any characters that are currently available, without
-          waiting for the rest (short reads are possible).
-
-        * wait for as long as it needs to for the first character to
-          become available, unless the port is in non-blocking mode
-
-        * return `#f' if end-of-file is encountered before reading any
-          characters, otherwise return the number of characters read.
-
-        * return 0 if the port is in non-blocking mode and no characters
-          are immediately available.
-
-        * return 0 if the request is for 0 bytes, with no end-of-file
-          check
-
 ** New function: object->string OBJ
 
 Return a Scheme string obtained by printing a given object.
@@ -558,6 +613,22 @@ Return the argument.
 
 Use `identity' instead.
 
+** Deprecated: -1+
+
+Use `1-' instead.
+
+** Deprecated: return-it
+
+Use `noop' instead.
+
+** Deprecated: string-character-length
+
+Use `string-length' instead.
+
+** Deprecated: flags
+
+Use `logior' instead.
+
 ** Deprecated: close-all-ports-except.
 
 This was intended for closing ports in a child process after a fork,
@@ -589,6 +660,12 @@ If you have old code using the old syntax, import
 
   (use-modules (oop goops old-define-method) (oop goops))
 
+** Deprecated function: builtin-variable
+   Removed function: builtin-bindings
+
+There is no longer a distinction between builtin or other variables.
+Use module system operations for all variables.
+
 * Changes to the gh_ interface
 
 * Changes to the scm_ interface
@@ -809,6 +886,26 @@ Use scm_object_to_string instead.
 Use scm_wrong_type_arg, or another appropriate error signalling function
 instead.
 
+** Explicit support for obarrays has been deprecated.
+
+Use `scm_str2symbol' and the generic hashtable functions instead.
+
+** The concept of `vcells' has been deprecated.
+
+The data type `variable' is now used exclusively.  `Vcells' have been
+a low-level concept so you are likely not affected by this change.
+
+*** Deprecated functions: scm_sym2vcell, scm_sysintern,
+    scm_sysintern0, scm_symbol_value0, scm_intern, scm_intern0.
+
+Use scm_c_define or scm_c_lookup instead, as appropriate.
+
+*** New functions: scm_c_module_lookup, scm_c_lookup,
+    scm_c_module_define, scm_c_define, scm_module_lookup, scm_lookup,
+    scm_module_define, scm_define.
+
+These functions work with variables instead of with vcells.
+
 \f
 Changes since Guile 1.3.4:
 
@@ -5475,7 +5572,7 @@ Until then, gtcltk-lib provides trivial, low-maintenance functionality.
 \f
 Copyright information:
 
-Copyright (C) 1996,1997 Free Software Foundation, Inc.
+Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
 
    Permission is granted to anyone to make or distribute verbatim copies
    of this document as received, in any medium, provided that the