SBCL 2.4.1:n julkaisu, Common Lisp -kielen toteutus

SBCL 2.4.1 (Steel Bank Common Lisp), Common Lisp -ohjelmointikielen ilmainen toteutus, on julkaistu. Projektikoodi on kirjoitettu Common Lisp- ja C-kielillä, ja sitä jaetaan BSD-lisenssillä.

Uudessa julkaisussa:

  • Lisätty osittainen tuki kompakteille ilmentymien otsikoille rinnakkaiseen roskakeräimeen käyttämällä mark-region-algoritmia.
  • Toiminnoissa, joissa on ilmoitettu palautustyyppi, suuret SAFETY- ja DEBUG 3 -optimointitilat varmistavat, että palautusarvoille suoritetaan tyyppitarkistus.
  • FreeBSD-alustalla linkitys libpthreadilla on toteutettu ja osoitetilan satunnaistaminen (ASLR) on poistettu käytöstä.
  • 64-bittisten riscv- ja ppc-arkkitehtuurien kokoonpano on palautettu.
  • Fastrem-32-tuki on otettu käyttöön kaikille alustoille (optimoituja FLOOR-laskelmia varten).
  • Korjattu virhe, joka aiheutti siirrettyjen linjojen huuhtelun uudelleen muistin tiivistämisen jälkeen merkkialueen rinnakkaisjätteenkerääjällä.
  • Ongelma kääntäjän silmukassa käsiteltäessä joitain SATISFIES-tyypeillä olevia rakenteita on ratkaistu.
  • Järjestelmän eri osissa käytetyt hajautustaulukot (paketit, Unicode-taulukot) muunnetaan käyttämään hajautusfunktioita, jotka ovat vapaita törmäyksistä (täydellinen).
  • Luokkarakennehierarkioiden TYPECASE-makro on toteutettu käyttämällä törmäysvapaata tiivistettä.
  • Suorituskyvyn optimoimiseksi rajojen tarkistukset on poistettu indekseistä, joissa on vakiopoikkeama, kun kääntäjä tietää, että indeksi on pienempi kuin koon ja offsetin välinen ero.
  • Kääntäjä ottaa huomioon DIGIT-CHAR-optimointitiedot.
  • Kääntäjä on ottanut käyttöön mahdollisuuden sulkea pois väliarvot joissakin APPLY-, CONCATENATE- ja MAKE-ARRAY-kutsuissa argumenteille, jotka on rakennettu sekvensseistä, joissa on tuoreita miinuksia.
  • Silmukan "(LOOP FOR X IN (REVERSE LIST) ...)" toimintaa on nopeutettu, mikä nyt käyttää vähemmän haittoja.
  • "(LOOP... APPEND...)" -silmukka on kompaktimpi ja tekee vähemmän työtä lisättäessä NIL.
  • Eri taulukoiden tyyppitarkistuksia on nopeutettu ja lyhennetty.

Lähde: opennet.ru

Lisää kommentti