Lançamento do SBCL 2.3.9, uma implementação da linguagem Common Lisp

Foi lançada a SBCL 2.3.9 (Steel Bank Common Lisp), uma implementação gratuita da linguagem de programação Common Lisp. O código do projeto foi escrito em Common Lisp e C e é distribuído sob a licença BSD.

Na nova versão:

  • A alocação de pilha via DYNAMIC-EXTENT agora se aplica não apenas à ligação inicial, mas também a todos os valores que a variável pode assumir (por exemplo, via SETQ). Isso permite, por exemplo, a construção mais fácil de estruturas de pilha complexas ou recursivas por meio de iteração.
  • Algumas interfaces no módulo SB-POSIX foram atualizadas para estarem em conformidade com a especificação, e um resultado NULL da biblioteca C é considerado um erro se, e somente se, o valor de errno for alterado pela chamada. Nesse caso, o sinal SYSCALL-ERROR é gerado.
  • Melhoria no desempenho das macros DO-PASSWDS e DO-GROUPS no módulo SB-POSIX. Essas macros foram projetadas para acesso seguro ao banco de dados de senhas e grupos.
  • O suporte para as plataformas Darwin x86 e PowerPC foi restaurado (obrigado a Kirill A. Korinsky, Sergey Fedorov e barracuda156).
  • Corrigida a compilação incorreta que ocorria devido à inferência de tipo errônea ao multiplicar valores fixos por valores fracionários.
  • Corrigido um erro de compilação que ocorria em alguns casos ao verificar valores de 64 bits com e sem sinal.
  • Corrigido um erro de compilação que ocorria quando o argumento ":INITIAL-CONTENTS" da função MAKE-ARRAY era uma constante não sequencial.
  • Corrigido um erro na compilação de funções de redução (fold functions) em uma constante de uma determinada sequência quando as funções ":TEST" ou ":KEY" retornavam um valor falso.
  • Corrigido um erro de compilação para funções de matriz ou sequência com argumentos que implicam tamanhos de sequência muito grandes.
  • Corrigido um erro de compilação que ocorria quando o valor de retorno de ADJUST-ARRAY não era utilizado.
  • A inferência do compilador sobre os tipos de funções que podem ser propagadas retroativamente através da representação intermediária foi otimizada.
  • Inferência de tipo aprimorada para LDB, LOGBITP e RATIO.
  • Foram feitas otimizações para eliminar verificações de limites desnecessárias em muitos casos de comparação transitiva.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção DDoS, servidores VPS VDS 🔥 Compre hospedagem de sites confiável com proteção contra DDoS, servidores VPS/VDS | ProHoster