/ Software-Entwicklung / Programmiersprachen: Go 1.8 legt an Tempo zu

Programmiersprachen: Go 1.8 legt an Tempo zu

Gerfried Steube on February 17, 2017 - 11:16 am in Software-Entwicklung

Neben der optimierten Garbage Collection sorgen auch das nun breiter eingesetzte Backend aus Go 1.7 für eine bessere Performance der von Google vorangetriebenen Programmiersprache.

Nach guten zwei Monaten in der Betaphase steht nun die fertige Version 1.8 der Programmiersprache Go zur Verfügung. Unter anderem konnte das Team für dieses Release die Garbage Collection verbessern, sodass sich die mit ihrer Arbeit verbundenen Pausen weiter reduzieren ließen, und den Support für Kontexte ausweiten. Darüber hinaus enthält das net/http-Paket nun einen Mechanismus, um HTTP/2-Server-Pushes von einem Handler aus zu senden und der HTTP-Server ist mit den neuen Methoden Server.Shutdown und Server.Close zum Herunterfahren ausgestattet. Laufzeitumgebung und Tools sind so erweitert, dass sich durch Setzen des -mutexprofile-Flag nach dem Update Mutexe (in Go Blockaden aufgrund wechselseitigen Ausschlusses) besser untersuchen lassen.

Die Entwickler haben das in Go 1.7 eingeführte Compiler-Backend für 64-Bit-Systeme mit x86-Architektur im vergangenen halben Jahr weiter ausgebaut, sodass es nun für alle unterstützten Architekturen zum Einsatz kommen kann. Der damit erzeugte Code soll in vielen Fällen effizienter sein und sich besser optimieren lassen, sodass weniger CPU-Zeit benötigt wird. Passend dazu steht nun auch ein neues Compiler-Frontend zur Verfügung, dass als Grundlage für zukünftige Arbeiten zur Performance-Verbesserung dienen soll.

Was die Sprache angeht, lässt sich nach dem Update unter anderem der Wert eines Structs in den eines anderen umwandeln, wenn sich die Tags der Structs unterscheiden. Go kann nun wohl auch auf 32-bit MIPS-Architekturen unter Linux arbeiten, wobei darauf zu achten ist, dass das nur für Rechner funktioniert, deren Router eine Gleitkommaeinheiten aufweist oder sie in Firmware emuliert. Unter OS X läuft Go nur ab Version 10.8, das Kompilieren und Ausführen auf älteren Versionen ist nicht getestet. Außerdem ist Go 1.8 die letzte Version, die Linux auf ARMv5E- und ARMv6-Prozessoren unterstützt, die nächste Version wird voraussichtlich mindestens ARMv6K benötigen.

Eine vollständige Liste aller Änderungen lässt sich der Dokumentation entnehmen. Go kommt unter anderem in Projekten wie Docker zum Einsatz und wird von Google vorangetrieben. Das Unternehmen stellte die Programmiersprache 2009 der Öffentlichkeit vor und positionierte sie als C-Alternative. (jul)

Read more on: Source

Comments are disabled