Po šiestich mesiacoch vývoja bola vydaná verzia 1.26 kompilátora a štandardnej knižnice programovacieho jazyka. Go.
Hlavné zmeny:
- Vstavaná funkcia new, ktorá vytvára novú premennú, umožňuje použiť výraz určujúci počiatočnú hodnotu premennej ako operand. Jednoduchým príkladom tejto zmeny je kód podobný tomuto:
x := int64(300) ptr := &x
Dá sa zjednodušiť na:
ptr := new(int64(300)) - Generické typy sa môžu v zozname parametrov typu odkazovať samy na seba. Táto zmena zjednodušuje implementáciu zložitých dátových štruktúr a rozhraní.
Zlepšenie výkonu:
- Experimentálny zberač odpadu v Green Tea je teraz štandardne povolený.
- Režijné náklady na COG boli znížené približne o 30 %.
- Kompilátor dokáže alokovať rezervnú pamäť pre štruktúry Slice na zásobníku vo viacerých situáciách, čo zlepšuje výkon.
Nástroje:
- Príkaz go fix bol kompletne prepísaný pomocou frameworku analýza a teraz obsahuje niekoľko desiatok „modernizátorov“, ktoré ponúkajú bezpečné opravy, aby váš kód mohol využívať nové jazykové a štandardné knižnice.
Pridané experimentálne doplnky, ktoré sú dostupné iba vtedy, keď sú explicitne povolené:
- balíček archsimd Prístup k operáciám SIMD závislým od architektúry. Momentálne je podporovaná iba architektúra AMD64.
- balíček tajomstvo s pomocnými funkciami na vymazanie pamäte.
- V profilovacom balíku pprof Pridaná podpora pre možnosť GOEXPERIMENT=goroutineleakprofile na detekciu únikov goroutín.
Zdroj: linux.org.ru
