The release of SBCL 2.4.1 (Steel Bank Common Lisp), a free implementation of the Common Lisp programming language, has been published. The project's code is written in Common Lisp and C, and is distributed under the BSD license.
In the new release:
- Partial support for compact instance headers has been added to the parallel garbage collector using the mark-region algorithm.
- Type checking for return values has been enabled for functions with declared return types in optimization modes with high SAFETY values and in DEBUG mode 3.
- On the FreeBSD platform, the linkage with libpthread has been implemented, and address space randomization (ASLR) has been disabled.
- Builds on 64-bit architectures riscv and ppc have been restored.
- Fastrem-32 support has been implemented for all platforms (for optimized FLOOR calculations).
- A bug that caused the re-clearing of moved strings after memory compaction by the mark-region parallel garbage collector has been fixed.
- The issue of the compiler getting stuck in loops while processing certain SATISFIES type constructs has been resolved.
- Hash tables used in various parts of the system (packages, Unicode tables) have been converted to use collision-free hash functions (perfect).
- The TYPECASE macro for class structure hierarchies has been implemented using a collision-free hash.
- To optimize performance, boundary checks for indices with constant offsets have been removed when the compiler knows that the index is less than the difference between the size and offset.
- The compiler has been enhanced with additional data for the DIGIT-CHAR optimization.
- The compiler has implemented the ability to omit intermediate values in some APPLY, CONCATENATE, and MAKE-ARRAY calls for arguments constructed from sequences with fresh cons modifications.
- The performance of the loop '(LOOP FOR X IN (REVERSE LIST) …)' has been accelerated, now using fewer conses.
- The loop '(LOOP … APPEND …)' has become smaller and performs less work when adding NIL.
- Type checks for various arrays have been accelerated and streamlined.
Source: opennet.ru
