Po půl roce vývoje byla vydána verze 1.26 kompilátoru a standardní knihovny programovacího jazyka. Go.
Hlavní změny:
- Nová vestavěná funkce pro vytváření nové proměnné umožňuje použít jako operand výraz, který určuje počáteční hodnotu proměnné. Jednoduchý příklad takové změny je kód podobný tomuto:
x := int64(300) ptr := &x
Lze zjednodušit na:
ptr := new(int64(300)) - Generické typy mohou odkazovat na sebe v seznamu parametrů typu. Tato změna usnadňuje implementaci složitých datových struktur a rozhraní.
Zlepšení výkonu:
- Experimentální sběrač odpadu Green Tea je nyní zapnutý ve výchozím nastavení.
- Náklady na CGO byly sníženy přibližně o 30%.
- Kompilátor může alokovat záložní paměť pro Slice struktury na zásobníku ve větším počtu situací, což zvyšuje výkon.
Nástroje:
- Příkaz go fix byl kompletně přepracován s využitím rámce analysis a nyní zahrnuje desítky "modernizátorů", kteří nabízejí bezpečné opravy, které pomáhají vašemu kódu využívat výhody nových funkcí jazyka a standardní knihovny.
Byly přidány experimentální rozšíření, dostupné pouze při výslovném povolení:
- Balíček archsimd pro přístup k architektuře závislým operacím SIMD. V tuto chvíli je podporován pouze AMD64.
- Balíček secret s pomocnými funkcemi pro nulování paměti.
- V profilačním balíčku pprof byla přidána podpora možnosti GOEXPERIMENT=goroutineleakprofile pro detekci úniků goroutine.
Zdroj: linux.org.ru
