lor.opennet
29 сентября было объявлено о выходе корректирующего обновления свободной реализации языка программирования Common Lisp `sbcl-2.4.9`.

Пакет `sbcl` включает в себя компилятор, профайлер, дебаггер и другие полезные расширения. Распространяется как общественное достояние, с частями под лицензией MIT. Большая часть кода `sbcl` написана на Common Lisp. Официально поддерживаются платформы x86, x86-64, PowerPC, SPARC, Alpha, MIPS, HPPA, ARM с Linux, а также ряд других операционных систем на аппаратных плафтормах x86 и x86-64.

Изменения в выпуске `2.4.9`:

* Незначительное нарушение совместимости с предыдущими версиями: `FIND`, `POSITION` (и их варианты) теперь проверяют аргументы `:START` и `:END` на корректность как ограничивающие указатели индексов (bounding index designators) для последовательностей списков.
* Поддержка платформ:
* Улучшена поддержка Solaris и ее вариантов на x86 и x86-64 (благодарности Masatoshi SANO)
* Исправлен баг в обработке таймаутов и прерванных системных вызовов в `SB-UNIX:UNIX-SIMPLE-POLL` (lp#2078824, благодарности Michał phoe Herda)
* Исправлен баг в лисповом представлении `ssize_t` в Windows
* Исправлено кодирование больших констант в RISC-V. (lp#2077307, благодарности Guillaume LE VAILLANT)
* Более экономичные низкоуровневые типовые тесты на arm64
* Сборка после выполнения `git-archive` должна завершаться без ошибок.
* Исправлен баг: экспортирование символа во врема итерации пакета больше не пропускает другие символы. (lp#2080387, благодарности kbhit).
* Оптимизация: улучшения в хэш-таблицах EQ и связанных хэш-функциях.
* Оптимизация: проверка типа строки и строки-обозначения (string-designator) сделана более эффективной.
* Оптимизация: компилятор лучше понимает природу результата `CONCATENATE`.



common lisp, development, lisp, компилятор

Ссылка: https://www.linux.org.ru/news/development/17747616