Google on välja andnud programmeerimiskeele Go uue versiooni eelvaate. Versioon 1.18 lisab funktsionaalsuse nn parameetriliste tüüpidega üldiseks programmeerimiseks.
Nende endi sõnadega on see kõige olulisem ja suurim muudatus programmeerimiskeeles pärast Go versiooni 1 väljaandmist. Geneeriliste ravimite idee seisneb selles, et see võimaldab nüüd funktsioone ja andmestruktuuride esitamiseks tüüpe muutes. See välistab "üldisuse", mis on lubatud liidese tüübi määratlemisel funktsioonile toodud tegelike andmete abstraktsiooniks.
Google märgib, et Go arendajad peaksid mõistma, et funktsionaalsus toob kahtlemata kaasa uusi vigu. Seetõttu peaksid nad nendele „geneerilistele ravimitele” suhtuma ettevaatlikult.
Muud funktsioonid Go 1.18 beetaversioonis
Lisaks ülaltoodud funktsioonidele on uuel eelvaatel ka sisseehitatud tugi fuzzing-põhiste testide kirjutamiseks. Need testid võivad automaatselt leida sisendeid, mis põhjustavad programmide krahhi või tagastavad kehtetuid vastuseid. Go 1.18 beetaversioon pakub ka uut tööruumi režiimi Go. See võimaldab programmeerijatel töötada samaaegselt mitme Go mooduliga. Google’i sõnul on see eriti kasulik suurte projektide puhul.
Lisaks lisab versioon 1.18 beeta funktsioone laiendatud käsuga go version -m. See käsk salvestab nüüd üksikasjad kompilaatori lippudena. Nüüd saab programm teha päringuid oma järgu üksikasjadest käsuga debug.ReadBuildInfo.
Samuti on eelvaatesse lisatud rohkem registripõhiseid helistamismeetodeid, mis on saadaval alates versioonist Go 1.17. Kui eelmises versioonis sobis see funktsionaalsus vaid Go koodi kiirendamiseks x86 ja x64 süsteemides, siis nüüd sobib see ka ARM64 ja PPC64 põhistele süsteemidele. See peaks andma kuni 20 protsenti rohkem kiirust.