Changes since the 1.9.15 prerelease:
+** `unquote' and `unquote-splicing' accept multiple expressions
+
+As per the R6RS, these syntax operators can now accept any number of
+expressions to unquote.
+
+** `getopt-long' parsing errors throw to `quit', not `misc-error'
+
+This change should inhibit backtraces on argument parsing errors.
+`getopt-long' has been modified to print out the error that it throws
+itself.
+
+** New helpers: `print-exception', `set-exception-printer!'
+
+These functions implement an extensible exception printer. Guile
+registers printers for all of the exceptions it throws. Users may add
+their own printers. There is also `scm_print_exception', for use by C
+programs. Pleasantly, this allows SRFI-35 and R6RS exceptions to be
+printed appropriately.
+
+** `positions' reader option enabled by default
+
+This change allows primitive-load without --auto-compile to also
+propagate source information through the expander, for better errors and
+to let macros know their source locations. The compiler was already
+turning it on anyway.
+
+** `load' is a macro (!) that resolves paths relative to source file dir
+
+The familiar Schem `load' procedure is now a macro that captures the
+name of the source file being expanded, and dispatches to the new
+`load-in-vicinity'. Referencing `load' by bare name returns a closure
+that embeds the current source file name.
+
+This fix allows `load' of relative paths to be resolved with respect to
+the location of the file that calls `load'.
+
+** "autocompile" -> "auto-compile"
+
+The "--autocompile" and "--no-autocompile" arguments were renamed to
+have a dash, for consistency with the GUILE_AUTO_COMPILE environment
+variable, and with common conventions. A number of variables were also
+appropriately renamed.
+
+** `scm_primitive_load' defaults to UTF-8, not Latin-1
+
+Like `compile-file', `primitive-load' now defaults to UTF-8.
+
+** Warning now available for auto-compiled files.
+
+See the `%auto-compilation-options' variable. Warnings at
+auto-compilation time are preceded with the `*current-warning-prefix*'
+(a fluid).
+
** Deprecated: primitive properties
The `primitive-make-property', `primitive-property-set!',
actually used this, this behavior may be reinstated via the
`read-hash-extend' mechanism.
+** `unquote' and `unquote-splicing' accept multiple expressions
+
+As per the R6RS, these syntax operators can now accept any number of
+expressions to unquote.
+
** Scheme expresssions may be commented out with #;
#; comments out an entire expression. See SRFI-62 or the R6RS for more
differences, however. Please mail bug-guile@gnu.org if you see any
deficiencies with Guile's backtraces.
+** `positions' reader option enabled by default
+
+This change allows primitive-load without --auto-compile to also
+propagate source information through the expander, for better errors and
+to let macros know their source locations. The compiler was already
+turning it on anyway.
+
** New macro: `current-source-location'
The macro returns the current source location (to be documented).
loading a module is one that has the needed bindings, instead of relying
on chance.
+** `load' is a macro (!) that resolves paths relative to source file dir
+
+The familiar Schem `load' procedure is now a macro that captures the
+name of the source file being expanded, and dispatches to the new
+`load-in-vicinity'. Referencing `load' by bare name returns a closure
+that embeds the current source file name.
+
+This fix allows `load' of relative paths to be resolved with respect to
+the location of the file that calls `load'.
+
** Many syntax errors have different texts now
Syntax errors still throw to the `syntax-error' key, but the arguments
in which case it was `(guile-user)'. This has been fixed to have all
new threads unknown to Guile default to `(guile-user)'.
+** New helpers: `print-exception', `set-exception-printer!'
+
+These functions implement an extensible exception printer. Guile
+registers printers for all of the exceptions it throws. Users may add
+their own printers. There is also `scm_print_exception', for use by C
+programs. Pleasantly, this allows SRFI-35 and R6RS exceptions to be
+printed appropriately.
+
** GOOPS dispatch in scheme
As an implementation detail, GOOPS dispatch is no longer implemented by
there is no more need to use `inet-aton'/`inet-ntoa'. The latter
functions are deprecated.
+** `getopt-long' parsing errors throw to `quit', not `misc-error'
+
+This change should inhibit backtraces on argument parsing errors.
+`getopt-long' has been modified to print out the error that it throws
+itself.
+
** New primitive: `tmpfile'.
See "File System" in the manual.