Google releases Go 1.18 Beta mit generischem Code

Google hat eine Vorschau auf die neue Version der Programmiersprache Go . veröffentlicht. Ausführung 1.18 fügt Funktionalität für "generisch" hinzu’ Programmierung mit sogenannten „parametrierten“’ Typen.

In ihren eigenen Worten, es ist die wichtigste und größte Änderung der Programmiersprache seit der Veröffentlichung der Go-Version 1. Die Idee hinter Generics ist, dass es jetzt Funktionalität zur Darstellung von Funktionen und Datenstrukturen durch Modifizieren der Typen ermöglicht. Dies schließt die „Allgemeinheit“ aus’ erlaubt, indem ein Schnittstellentyp definiert wird, um die tatsächlichen Daten zu abstrahieren, die einer Funktion zugeführt werden.

Google weist darauf hin, dass Go-Entwickler erkennen sollten, dass die Funktionalität zweifellos zu neuen Fehlern führen wird. Sie sollten sich daher diesen „Generika“ nähern’ mit Vorsicht.

Andere Funktionen in Go 1.18 Beta

Zusätzlich zu den oben genannten Funktionen, Die neue Vorschau bietet außerdem eine integrierte Unterstützung für das Schreiben von Fuzzing-basierten Tests. Diese Tests können automatisch Eingaben finden, die zum Absturz von Programmen oder ungültigen Antworten führen. Gehen 1.18 Beta bietet auch einen neuen „Go-Workspace-Modus“. Dadurch können Programmierer mit mehreren Go-Modulen gleichzeitig arbeiten. Dies ist besonders nützlich für große Projekte, laut Google.

Außerdem, Ausführung 1.18 Beta fügt Funktionalität mit einem erweiterten Befehl go version -m hinzu. Dieser Befehl speichert jetzt Details als Compiler-Flags. Ein Programm kann nun mit dem Befehl debug.ReadBuildInfo . seine eigenen Build-Details abfragen.

Ebenfalls, mehr registerbasierte Aufrufkonvention, verfügbar seit Go 1.17, wurde in der Vorschau hinzugefügt. Where in the previous version this functionality was only suitable for speeding up Go code on x86 and x64 systems, it is now also suitable for ARM64 and PPC64 based systems. This should provide up to 20 percent more speed.