|
From: Christophe R. <cs...@ca...> - 2025-09-29 08:53:34
|
Dear all,
SBCL 2.5.9 is now available from the usual places (version control, file
release system at sourceforge); binaries for some platforms will
probably trickle in over the course of the next day or so. The most
immediately pertinent changes in this release are summarized below. As
ever, feedback, success reports, problem reports are welcome.
Christophe
changes in sbcl-2.5.9 relative to sbcl-2.5.8:
* minor incompatible change: remove (SETF SB-EXT:POSIX-GETENV), which only
ever existed as an operator in SBCL on Windows.
* minor incompatible change: (LOG -0.0) now returns
SINGLE-FLOAT-NEGATIVE-INFINITY, more consistently with IEEE 754.
* minor incompatible change: (EXPT 0.0 0.0) now returns 1.0, rather than
signalling an error.
* platform support
** restore functionality on NetBSD. (thanks to Masatoshi SANO)
** fix building SBCL as a shared library on ARM64. (lp#2122059, reported
by Guillaume LE VAILLANT)
* optimization: TYPEP with array types does less work in many cases.
* optimization: COMPLEMENT on a known function can be transformed away in
more cases.
* optimization: calls to local functions with &REST arguments can be
optimized in more cases.
* optimization: bound checks can be eliminated in ROW-MAJOR-AREF based on
constraints relating the index to the available array elements.
(lp#2121253, thanks to Vasily Postnicov)
* optimization: function type declarations no longer inhibit inlining local
functions. (lp#2121351, reported by kbhit)
* optimization: bulk movement of memory in the system is implemented with
less overhead around memmove().
* optimization: MAKE-ARRAY with dimensions coming from ARRAY-DIMENSIONS on
an array with known dimensions avoids consing an intermediate dimensions
list.
* optimization: a number of arithmetic operators and relations in
combination with some constant arguments do partial expression
simplification at compile-time. (lp#2122063 for %NEGATE thanks to Vasily
Postnicov)
|