mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-12 23:00:22 +02:00
cull 1.9.8 NEWS items
* NEWS: Remove 1.9.8 items; they have been folded in already.
This commit is contained in:
parent
17ed90df48
commit
71fada0b6d
1 changed files with 1 additions and 76 deletions
77
NEWS
77
NEWS
|
@ -8,82 +8,7 @@ Please send Guile bug reports to bug-guile@gnu.org.
|
||||||
(During the 1.9 series, we will keep an incremental NEWS for the latest
|
(During the 1.9 series, we will keep an incremental NEWS for the latest
|
||||||
prerelease, and a full NEWS corresponding to 1.8 -> 2.0.)
|
prerelease, and a full NEWS corresponding to 1.8 -> 2.0.)
|
||||||
|
|
||||||
Changes in 1.9.8 (since the 1.9.7 prerelease):
|
Changes in 1.9.9 (since the 1.9.8 prerelease):
|
||||||
|
|
||||||
** Struct optimizations
|
|
||||||
|
|
||||||
Structs underly many types in Guile, including records and objects. This
|
|
||||||
release speeds up struct access and creation.
|
|
||||||
|
|
||||||
** Add libffi dependency
|
|
||||||
|
|
||||||
Libffi is now required, to build the foreign function interface. See
|
|
||||||
http://sourceware.org/libffi/, for more information on libffi.
|
|
||||||
|
|
||||||
We are not aware of a platform that Guile runs on for which libffi is
|
|
||||||
unavailable.
|
|
||||||
|
|
||||||
** Foreign function interface
|
|
||||||
|
|
||||||
This release comes with a new `(system foreign)' module. Currently it
|
|
||||||
provides a low level "foreign function interface" (FFI), which allows
|
|
||||||
users to write Scheme code to invoke C code, without writing a single
|
|
||||||
line of C code.
|
|
||||||
|
|
||||||
The `dynamic-link' and `dynamic-func' procedures, which have been
|
|
||||||
available for a long time, can be used to get the address of a C
|
|
||||||
function as a "foreign" object at the Scheme level; using libffi, Guile
|
|
||||||
can construct calls to these functions.
|
|
||||||
|
|
||||||
The arguments to a C function may be integers, floating point numbers,
|
|
||||||
pointers, and structs. Numbers are passed using their normal Scheme
|
|
||||||
representations, and pointers and structs are represented as foreign
|
|
||||||
objects. Foreign objects can be converted back and forth to/from a
|
|
||||||
bytevector. They can have an associated foreign finalizer (e.g., a
|
|
||||||
procedure that will reclaim any associated resources when the object
|
|
||||||
becomes unreachable); alternatively, they can be finalized using a
|
|
||||||
guardian.
|
|
||||||
|
|
||||||
The `(system foreign)' API is currently low-level and possibly
|
|
||||||
inconvenient. It will be extended to provide higher-level constructs.
|
|
||||||
|
|
||||||
** Incompatible changes to the foreign value interface introduced in 1.9.7
|
|
||||||
|
|
||||||
The API in <libguile/foreign.h> changed since 1.9.7. C extensions need
|
|
||||||
recompilation.
|
|
||||||
|
|
||||||
** `dynamic-wind' compilation
|
|
||||||
|
|
||||||
`dynamic-wind' now has special support from the compiler and VM. The
|
|
||||||
compiler is able to inline the body of a `dynamic-wind', making it more
|
|
||||||
efficient. The run-time support is provided by the `wind' and `unwind'
|
|
||||||
VM instructions.
|
|
||||||
|
|
||||||
** New module: `(ice-9 vlist)'
|
|
||||||
|
|
||||||
This module provides an implementation of Bagwell's VLists and
|
|
||||||
VList-based hash lists ("VHashes"). VLists are a list data structure
|
|
||||||
that provides constant-time random access and length computation
|
|
||||||
logarithmic in the number of elements. VLists also use less storage
|
|
||||||
space than standard Scheme linked lists.
|
|
||||||
|
|
||||||
VHashes are a functional dictionary type similar to association lists.
|
|
||||||
However, unlike association lists, accessing a value given its key is
|
|
||||||
typically a constant-time operation. VHashes are now used in a few
|
|
||||||
places of the compiler.
|
|
||||||
|
|
||||||
** New procedures: `getaddrinfo' and family
|
|
||||||
|
|
||||||
Bindings for the POSIX getaddrinfo(3) host name and service lookup
|
|
||||||
function are available. This function is now recommended over
|
|
||||||
`gethostname' and friends as it's more expressive and can return a
|
|
||||||
sorted list of addresses, as opposed to a single address.
|
|
||||||
|
|
||||||
** Tutorial deleted
|
|
||||||
|
|
||||||
The tutorial was removed. It was incomplete, outdated, and contained C
|
|
||||||
examples that were no longer valid. The reference manual, on the other
|
|
||||||
hand, contains up-to-date examples and documentation.
|
|
||||||
|
|
||||||
** And of course, the usual collection of bugfixes
|
** And of course, the usual collection of bugfixes
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue