mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-11 22:31:12 +02:00
1.9.13 news to main body
* NEWS: Fold 1.9.13 text into the main text.
This commit is contained in:
parent
ec3c7570d8
commit
ef6b0e8d48
1 changed files with 74 additions and 137 deletions
211
NEWS
211
NEWS
|
@ -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'.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue