Publicouse o lanzamento de SBCL 2.4.1 (Steel Bank Common Lisp), unha implementación gratuíta da linguaxe de programación Common Lisp. O código do proxecto está escrito en Common Lisp e C, e distribúese baixo a licenza BSD.
Na nova versión:
- Engadiuse compatibilidade parcial para cabeceiras de instancia compactas ao colector de lixo paralelo mediante o algoritmo de marca-rexión.
- Para funcións con tipos de retorno declarados, os grandes modos de optimización SAFETY e DEBUG 3 garanten que a comprobación de tipos se realice nos valores de retorno.
- Na plataforma FreeBSD, a ligazón con libpthread está implementada e a aleatorización do espazo de enderezos (ASLR) está desactivada.
- Restaurouse o conxunto en arquitecturas riscv e ppc de 64 bits.
- Implementouse o soporte Fastrem-32 para todas as plataformas (para cálculos FLOOR optimizados).
- Corrixiuse un erro que facía que as liñas movidas se volvasan lavar despois da compactación da memoria polo colector de lixo paralelo da rexión de marca.
- Resolveuse o problema do bucle do compilador ao procesar algunhas construcións con tipos SATISFIES.
- As táboas hash utilizadas en varias partes do sistema (paquetes, táboas Unicode) convértense para usar funcións hash que están libres de colisións (perfecto).
- A macro TYPECASE para xerarquías de estruturas de clases implícase usando un hash sen colisións.
- Para optimizar o rendemento, elimináronse as comprobacións de límites para índices con compensacións constantes, onde o compilador sabe que o índice é menor que a diferenza entre o tamaño e a compensación.
- O compilador ten en conta datos adicionais de optimización DIGIT-CHAR.
- O compilador implementou a capacidade de excluír valores intermedios nalgunhas chamadas APPLY, CONCATENATE e MAKE-ARRAY para argumentos construídos a partir de secuencias con novas modificacións.
- Acelerouse o funcionamento do bucle "(LOOP FOR X IN (LISTA INVERSA) ...)", que agora usa menos contras.
- O bucle "(LOOP... APPEND...)" é máis compacto e fai menos traballo ao engadir NIL.
- Aceleráronse e acurtáronse as comprobacións de tipo de varias matrices.
Fonte: opennet.ru
