diff options
-rw-r--r-- | NEWS | 211 |
1 files changed, 74 insertions, 137 deletions
@@ -16,142 +16,6 @@ The guile binary now supports a new switch "-x", which can be used to extend the list of filename extensions tried when loading files (%load-extensions). -Changes in 1.9.13 (since the 1.9.12 prerelease): - -** SRFI support - -The following SRFIs have been added: - -- SRFI-27 "Sources of Random Bits" -- SRFI-42 "Eager Comprehensions" -- SRFI-45 "Primitives for Expressing Iterative Lazy Algorithms" -- SRFI-67 "Compare Procedures" - -Thanks to Andreas Rottmann. - -** (system foreign) API changes - -The `make-foreign-function' procedure was renamed to -`pointer->procedure'. - -** (system xref) source database - -The `(system xref)' module can now map from source locations to -procedures. See the `source-procedures' and `source-closures' functions. - -** New procedures: `scm_to_latin1_stringn', `scm_from_latin1_stringn' - -Use these procedures when you know you have latin1-encoded or -ASCII-encoded strings. - -** New procedures: `scm_to_stringn', `scm_from_stringn' - -Use these procedures if you want to encode or decode from a particular -locale. - -** Removed support shlibs for SRFIs 1, 4, 13, 14, and 60 - -Though these SRFI support libraries did expose API, they encoded a -strange version string into their library names. That version was never -programmatically exported, so there was no way people could use the -libs. - -This was a fortunate oversight, as it allows us to remove the need for -extra, needless shared libraries --- the C support code for SRFIs 4, 13, -and 14 was already in core --- and allow us to incrementally return the -SRFI implementation to Scheme. - -** Simplifications to the set of low-level hooks exported by the VM - -See "VM Hooks" in the manual, for more information. - -** New traps system - -See "Traps" in the manual, for more information. - -** Breakpoints, tracepoints and source stepping now available at the REPL - -See "Interactive Debugging" in the manual, for more information. - -The new REPL commands are: break, break-at-source, tracepoint, traps, -delete, disable, enable, step, step-instruction, next, next-instruction, -finish, and registers. - -** Remove obsolete debug-options - -Removed `breakpoints', `trace', `procnames', `indent', `frames', -`maxdepth', and `debug' debug-options. - -** Remove obsolete print-options - -The `source' and `closure-hook' print options are obsolete, and have -been removed. - -** Remove obsolete read-options - -The "elisp-strings" and "elisp-vectors" read options were unused and -obsolete, so they have been removed. - -** Remove eval-options and trap-options - -Eval-options and trap-options are obsolete with the new VM and -evaluator. - -** Remove (ice-9 debugger) and (ice-9 debugging) - -See "Traps" and "Interactive Debugging" in the manual, for information -on their replacements. - -** Remove the GDS Emacs integration - -See "Using Guile in Emacs" in the manual, for info on how we think you -should use Guile with Emacs. - -** Remove vm-version, vm options - -These procedures introduced during the 1.9 series had no effect. - -** Add `call-with-vm' and ability to set VM engine - -`call-with-vm' applies a procedure to arguments in a context in which a -given VM is current. - -`set-vm-engine!' can be used to specify the engine for a VM, which will -become current at the next `call-with-vm' invocation. - -** Default to "regular" VM engine for noninteractive use - -The "debug" engine is used when the user specifies --debug, or when -running interactively. A debug VM allows hooks to run; see "VM Hooks" in -the manual. - -** `backtrace' debug option on by default - -Given that Guile 2.0 can always give you a backtrace, backtraces are now -on by default. - -** `turn-on-debugging' deprecated - -** New compilation warning: `-Wformat' - -The `-Wformat' warning can indicate a number of common format string -errors. See "Compilation" in the manual, for more information. - -** Add `(system repl server)' module and `--listen' command-line argument - -The `(system repl server)' module exposes procedures to listen on -sockets for connections, and serve REPLs to those clients. The --listen -command-line argument allows any Guile program to thus be remotely -debuggable. - -See "Invoking Guile" for more information on `--listen'. - -** Big manual updates - -The GOOPS documentation got a lot of attention this cycle, as well as -the sections on interactive use and debugging. We don't know of any -sections of the manual that are out-of-date at this point. - ** And of course, the usual collection of bugfixes Interested users should see the ChangeLog for more information. @@ -163,6 +27,10 @@ Changes in 1.9.x (since the 1.8.x series): * New modules (see the manual for details) ** `(srfi srfi-18)', more sophisticated multithreading support +** `(srfi srfi-27)', sources of random bits +** `(srfi srfi-42)', eager comprehensions +** `(srfi srfi-45)', primitives for expressing iterative lazy algorithms +** `(srfi srfi-67)', compare procedures ** `(ice-9 i18n)', internationalization support ** `(rnrs bytevectors)', the R6RS bytevector API ** `(rnrs io ports)', a subset of the R6RS I/O port API @@ -228,6 +96,15 @@ help when running Guile inside Emacs. This option has been removed, and the helper functions `named-module-use!' and `load-emacs-interface' have been deprecated. +** Add `(system repl server)' module and `--listen' command-line argument + +The `(system repl server)' module exposes procedures to listen on +sockets for connections, and serve REPLs to those clients. The --listen +command-line argument allows any Guile program to thus be remotely +debuggable. + +See "Invoking Guile" for more information on `--listen'. + ** New reader options: `square-brackets' and `r6rs-hex-escapes' The reader supports a new option (changeable via `read-options'), @@ -1152,7 +1029,8 @@ procedure, with -Warity-mismatch, or `arity-mismatch' in the `#:warnings' as above. Other warnings include `-Wunused-variable' and `-Wunused-toplevel', to -warn about unused local or global (top-level) variables. +warn about unused local or global (top-level) variables, and `-Wformat', +to check for various errors related to the `format' procedure. ** A new `memoize-symbol' evaluator trap has been added. @@ -1380,6 +1258,43 @@ This module had some debugging helpers that are no longer applicable to the current debugging model. Importing this module will produce a deprecation warning. Users should contact bug-guile for support. +** Remove obsolete debug-options + +Removed `breakpoints', `trace', `procnames', `indent', `frames', +`maxdepth', and `debug' debug-options. + +** `backtrace' debug option on by default + +Given that Guile 2.0 can always give you a backtrace, backtraces are now +on by default. + +** `turn-on-debugging' deprecated + +** Remove obsolete print-options + +The `source' and `closure-hook' print options are obsolete, and have +been removed. + +** Remove obsolete read-options + +The "elisp-strings" and "elisp-vectors" read options were unused and +obsolete, so they have been removed. + +** Remove eval-options and trap-options + +Eval-options and trap-options are obsolete with the new VM and +evaluator. + +** Remove (ice-9 debugger) and (ice-9 debugging) + +See "Traps" and "Interactive Debugging" in the manual, for information +on their replacements. + +** Remove the GDS Emacs integration + +See "Using Guile in Emacs" in the manual, for info on how we think you +should use Guile with Emacs. + ** Deprecated: `lazy-catch' `lazy-catch' was a form that captured the stack at the point of a @@ -1411,6 +1326,16 @@ backward-compatible way. A new allocation routine, Libgc is a conservative GC, which we hope will make interaction with C code easier and less error-prone. +** New procedures: `scm_to_latin1_stringn', `scm_from_latin1_stringn' + +Use these procedures when you know you have latin1-encoded or +ASCII-encoded strings. + +** New procedures: `scm_to_stringn', `scm_from_stringn' + +Use these procedures if you want to encode or decode from a particular +locale. + ** New type definitions for `scm_t_intptr' and friends. `SCM_T_UINTPTR_MAX', `SCM_T_INTPTR_MIN', `SCM_T_INTPTR_MAX', @@ -1526,6 +1451,18 @@ The upshot is that the mechanics used to apply a SMOB are different from `apply_3' functions, and the macros SCM_SMOB_APPLY_0 and friends are now deprecated. Just use the scm_call_0 family of procedures. +** Removed support shlibs for SRFIs 1, 4, 13, 14, and 60 + +Though these SRFI support libraries did expose API, they encoded a +strange version string into their library names. That version was never +programmatically exported, so there was no way people could use the +libs. + +This was a fortunate oversight, as it allows us to remove the need for +extra, needless shared libraries --- the C support code for SRFIs 4, 13, +and 14 was already in core --- and allow us to incrementally return the +SRFI implementation to Scheme. + ** New C function: scm_module_public_interface This procedure corresponds to Scheme's `module-public-interface'. |