Verëffentlechung vun SBCL 2.4.1, eng Ëmsetzung vun der Common Lisp Sprooch

D'Verëffentlechung vum SBCL 2.4.1 (Steel Bank Common Lisp), eng gratis Ëmsetzung vun der Common Lisp Programméiersprooch, gouf publizéiert. De Projet Code ass a Common Lisp a C geschriwwen, a gëtt ënner der BSD Lizenz verdeelt.

An der neier Verëffentlechung:

  • Deelweis Ënnerstëtzung fir kompakt Instanz Header bäigefüügt fir de parallele Gerempels Sammler mam Mark-Regioun Algorithmus.
  • Fir Funktiounen mat deklaréierten Retourtypen, suergen déi grouss SAFETY an DEBUG 3 Optimisatiounsmodi datt d'Typprüfung op Retourwäerter ausgefouert gëtt.
  • Op der FreeBSD Plattform gëtt d'Verbindung mam libpthread implementéiert an d'Adressraumrandomiséierung (ASLR) ass behënnert.
  • D'Versammlung op 64-Bit Riscv a ppc Architekturen gouf restauréiert.
  • Fastrem-32 Support gouf fir all Plattformen ëmgesat (fir optimiséiert FLOOR Berechnungen).
  • E Käfer fixéiert deen bewegt Linnen no der Erënnerungskomprimatioun vun der Mark-Regioun parallele Gerempels nei gespullt huet.
  • De Problem mam Compiler Looping beim Veraarbechtung vun e puer Konstruktiounen mat SATISFIES Typen ass geléist.
  • Hash Dëscher déi a verschiddenen Deeler vum System benotzt ginn (Packagen, Unicode Dëscher) ginn ëmgewandelt fir Hashfunktiounen ze benotzen déi fräi vu Kollisiounen sinn (perfekt).
  • Den TYPECASE Makro fir Klassestrukturhierarchie gëtt mat engem kollisionfräien Hash implementéiert.
  • Fir d'Performance ze optimiséieren, goufen Grenzkontrolle fir Indizes mat konstante Offsets geläscht, wou de Compiler weess datt den Index manner ass wéi den Ënnerscheed tëscht Gréisst an Offset.
  • De Compiler berücksichtegt zousätzlech DIGIT-CHAR Optimiséierungsdaten.
  • De Compiler huet d'Fäegkeet implementéiert fir Zwëschenwäerter an e puer APPLY, CONCATENATE a MAKE-ARRAY Uriff fir Argumenter aus Sequenzen mat frësche Cons Modifikatioune auszeschléissen.
  • D'Operatioun vun der Loop "(LOOP FOR X IN (REVERSE LIST) ...)" gouf beschleunegt, déi elo manner Nodeeler benotzt.
  • Den "(LOOP... APPEND...)" Loop ass méi kompakt a mécht manner Aarbecht wann Dir NIL bäidréit.
  • Typ Kontrollen fir verschidde Arrays goufen beschleunegt a verkierzt.

Source: opennet.ru

Setzt e Commentaire