Utgivelse av SBCL 2.3.9, en implementering av Common Lisp-språket

Utgivelsen av SBCL 2.3.9 (Steel Bank Common Lisp), en gratis implementering av Common Lisp-programmeringsspråket, har blitt publisert. Prosjektkoden er skrevet i Common Lisp og C, og distribueres under BSD-lisensen.

I den nye utgivelsen:

  • Stackallokering via DYNAMIC-EXTENT gjelder nå ikke bare for den første bindingen, men også for alle verdier som variabelen kan ta (for eksempel via SETQ). Dette gjør det for eksempel mulig å forenkle konstruksjonen av komplekse eller rekursive strukturer i en stabel gjennom iterasjon.
  • Noen grensesnitt i SB-POSIX-modulen er laget for å samsvare med spesifikasjonen, og et NULL-resultat fra C-biblioteket anses som en feil hvis og bare hvis feilen endres av anropet. I dette tilfellet vil SYSCALL-ERROR-signalet genereres.
  • Forbedret drift av DO-PASSWDS- og DO-GROUPS-makroene i SB-POSIX-modulen. Disse makroene er laget for å fungere sikkert med passordet og gruppedatabasen.
  • Støtte for Darwin x86- og PowerPC-plattformene er gjenopprettet (takket være Kirill A. Korinsky, Sergey Fedorov og barracuda156).
  • Rettet feil kompilering som oppsto på grunn av feilaktig typeslutning ved multiplikasjon av fiksnummerverdier med brøkverdier.
  • Rettet en kompilatorfeil som oppstod i noen tilfeller ved kontroll av signerte og usignerte 64-bits verdier.
  • Rettet en kompilatorfeil når ":INITIAL-CONTENTS"-argumentet til MAKE-ARRAY er en ikke-sekvenskonstant.
  • Rettet en feil ved kompilering av konvolusjonsfunksjoner til en gitt sekvenskonstant ved retur av en falsk verdi fra funksjonene ":TEST" eller ":KEY".
  • Rettet en feil ved kompilering av array-funksjoner eller sekvenser med argumenter som innebærer svært store sekvensstørrelser.
  • Rettet en kompilatorfeil som oppstår når verdien returnert fra ADJUST-ARRAY ikke brukes.
  • Optimalisert kompilatorinferens av funksjonstyper som kan forplantes bakover gjennom en mellomrepresentasjon.
  • Forbedret typeslutning for LDB, LOGBITP og RATIO.
  • Optimaliseringer er gjort for å eliminere unødvendige grensekontroller for mange tilfeller av transitive sammenligninger.

Kilde: opennet.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig webhotell med DDoS-beskyttelse, VPS VDS-servere | ProHoster