Nach einem halben Jahr Entwicklung wurde die Version 1.26 des Compilers und der Standardbibliothek der Programmiersprache veröffentlicht. Go.
Wesentliche Änderungen:
- Die neue integrierte Funktion zur Erstellung einer neuen Variable ermöglicht die Verwendung eines Ausdrucks, der den Anfangswert der Variable angibt. Ein einfaches Beispiel für diese Änderung wäre ein Code wie dieser:
x := int64(300) ptr := &x
Das kann vereinfacht werden zu:
ptr := new(int64(300)) - Generische Typen können auf sich selbst in ihrer eigenen Liste von Typparametern verweisen. Diese Änderung vereinfacht die Implementierung komplexer Datenstrukturen und Schnittstellen.
Leistungsverbesserungen:
- Der experimentelle Garbage Collector Green Tea ist jetzt standardmäßig aktiviert.
- Die Overhead-Kosten von CGO wurden um etwa 30 % gesenkt.
- Der Compiler kann für Slice-Strukturen in mehr Situationen Speicherplatz im Stack reservieren, was die Leistung verbessert.
Werkzeugkasten:
- Der Befehl go fix wurde vollständig unter Verwendung des Frameworks analysis neu geschrieben und umfasst jetzt mehrere Dutzend „Modernisierer“, die sichere Korrekturen anbieten, um Ihren Code von den neuen Möglichkeiten der Sprache und der Standardbibliothek profitieren zu lassen.
Experimentelle Ergänzungen wurden hinzugefügt, die nur bei expliziter Aktivierung verfügbar sind:
- Das Paket archsimd für den Zugriff auf architekturspezifische SIMD-Operationen. Derzeit wird nur AMD64 unterstützt.
- Das Paket secret mit Hilfsfunktionen zum Zurücksetzen des Speichers.
- Im Profilierungspaket pprof wurde die Unterstützung für die Option GOEXPERIMENT=goroutineleakprofile zur Erkennung von Goroutine-Lecks hinzugefügt.
>>> Vollständige Änderungsübersicht
Quelle: linux.org.ru
