Mae Google wedi rhyddhau rhagolwg o'r fersiwn newydd o iaith raglennu Go. Mae fersiwn 1.18 yn ychwanegu ymarferoldeb ar gyfer rhaglennu 'generig' gyda mathau 'parameterized' fel y'u gelwir.
Yn eu geiriau eu hunain, dyma'r newid pwysicaf a mwyaf i'r iaith raglennu ers rhyddhau fersiwn Go 1. Y syniad y tu ôl i generig yw ei fod bellach yn caniatáu ymarferoldeb ar gyfer cynrychioli swyddogaethau a strwythurau data trwy addasu'r mathau. Nid yw hyn yn cynnwys y 'cyffredinolrwydd' a ganiateir trwy ddiffinio math o ryngwyneb fel ffordd o dynnu'r data gwirioneddol sy'n cael ei ddwyn i swyddogaeth.
Mae Google yn nodi y dylai datblygwyr Go sylweddoli y bydd y swyddogaeth yn ddi-os yn arwain at fygiau newydd. Dylent felly fod yn ofalus wrth fynd at y 'materion cyffredinol' hyn.
Swyddogaeth arall yn Go 1.18 Beta
Yn ogystal â'r swyddogaethau uchod, mae gan y rhagolwg newydd hefyd gefnogaeth fewnol ar gyfer ysgrifennu profion sy'n seiliedig ar niwlog. Gall y profion hyn ddod o hyd yn awtomatig i fewnbynnau sy'n achosi i raglenni chwalu neu ddychwelyd atebion annilys. Mae Go 1.18 Beta hefyd yn cynnig 'modd gweithle Go' newydd. Mae hyn yn caniatáu i raglenwyr weithio gyda modiwlau Go lluosog ar yr un pryd. Mae hyn yn arbennig o ddefnyddiol ar gyfer prosiectau mawr, yn ôl Google.
Ar ben hynny, mae fersiwn 1.18 Beta yn ychwanegu ymarferoldeb gyda gorchymyn fersiwn go estynedig -m. Mae'r gorchymyn hwn bellach yn storio manylion fel baneri casglwr. Gall rhaglen nawr gwestiynu ei fanylion adeiladu ei hun gyda'r gorchymyn debug.ReadBuildInfo.
Hefyd, mae mwy o gonfensiwn galw ar sail cofrestr, sydd ar gael ers Go 1.17, wedi'i ychwanegu yn y rhagolwg. Lle yn y fersiwn flaenorol roedd y swyddogaeth hon ond yn addas ar gyfer cyflymu cod Go ar systemau x86 a x64, mae bellach hefyd yn addas ar gyfer systemau seiliedig ar ARM64 a PPC64. Dylai hyn ddarparu hyd at 20 y cant yn fwy o gyflymder.