Etter et halvt år med utvikling ble versjon 1.26 av kompilatoren og standardbiblioteket for programmeringsspråket utgitt. Go.
Hovedendringer:
- Den nye innebygde funksjonen som oppretter en ny variabel, lar deg bruke et uttrykk som operand som angir den opprinnelige verdien av variabelen. Et enkelt eksempel på en slik endring er kode som ligner på dette:
x := int64(300) ptr := &x
Det kan forenkles til:
ptr := new(int64(300)) - Generiske typer kan referere til seg selv i sin egen typeparameterliste. Denne endringen forenkler implementeringen av komplekse datastrukturer og grensesnitt.
Ytelsesforbedringer:
- Den eksperimentelle avfallsinnsamleren Green Tea er nå aktivert som standard.
- Overheads CGO har blitt redusert med omtrent 30%.
- Kompilatoren kan tildele reserveplass for Slice-strukturer på stakken i flere situasjoner, noe som forbedrer ytelsen.
Verktøysettet:
- Kommandolinjeverktøyet go fix har blitt fullstendig omarbeidet ved hjelp av rammeverket analysis og inkluderer nå flere titalls "modernizatorer" som foreslår sikre rettinger, som hjelper koden din til å dra nytte av de nye funksjonene i språket og standardbiblioteket.
Eksperimentelle tillegg har blitt lagt til, som kun er tilgjengelige ved eksplisitt aktivering:
- Pakken archsimd for tilgang til arkitekturbaserte SIMD-operasjoner. For øyeblikket støttes kun AMD64.
- Pakken secret med hjelpefunksjoner for å nullstille minnet.
- I profileringspakken pprof ble det lagt til støtte for alternativet GOEXPERIMENT=goroutineleakprofile for å oppdage lekkasjer av goroutines.
Kilde: linux.org.ru
