A gyflwynwyd gan iaith raglennu Solod (Felly), sy'n darparu is-set o'r iaith Go wedi'i drawsgrynhoi i gynrychiolaeth C11 sy'n addas ar gyfer llunio gyda chyfieithyddion GCC, Clang, a zig cc. Gwahaniaeth allweddol rhwng Solod a Go yw ei ddefnydd o reoli cof Γ’ llaw, sy'n gweithredu heb gasglwr sbwriel, dyrannu cof awtomatig, na chyfrif cyfeiriadau. Mae'r trawsgrifiwr ar gyfer Solod wedi'i ysgrifennu yn Go a dosbarthu gan o dan y drwydded BSD. Cefnogir gwaith ynddo Linux, macOS ΠΈ Windows.
Mae'r iaith yn cefnogi strwythurau, dulliau, rhyngwynebau, sleisys, ffwythiannau sy'n dychwelyd gwerthoedd lluosog (er enghraifft, canlyniad + cod gwall), generig a galwadau gohiriedig (gohirio). Er mwyn symlrwydd, nid yw'r iaith yn cefnogi sianeli, coroutines, na chau. Gall datblygu yn Solod ddefnyddio gweinyddion LSP presennol, linters, amgylcheddau datblygu integredig, a golygyddion cod sy'n cefnogi'r iaith Go, yn ogystal Γ’'r gadwyn offer "go test".
Gellir integreiddio cod a ysgrifennwyd yn Solod Γ’ chymwysiadau C (gall C alw swyddogaethau Solod ac i'r gwrthwyneb) ac nid oes angen amser rhedeg arno. Mae meysydd allweddol o gymhwysiad yn cynnwys rhaglennu systemau, gyda galluoedd tebyg i C, ond gyda chystrawen a gwirio math arddull Go. Gellir defnyddio Solod hefyd i gludo llyfrgelloedd Go i'w defnyddio mewn prosiectau C. Mae'r pecynnau Go canlynol wedi'u porthi i C:
- llinynnau
- io (antonz.org)
- bytes
- aelo
- sleisys
ΠΈ ac ati Eithr set Gellir defnyddio llyfrgelloedd Go wedi'u Portio mewn rhaglenni Solod strapio dros y llyfrgell C safonol libc.
Yn ddiofyn, mae'r holl gof yn cael ei ddyrannu ar y pentwr, ond trwy ffwythiannau Dyrannu / Am Ddim Mae'r llyfrgell safonol yn caniatΓ‘u dyrannu pentwr. Ni ddefnyddir casglu sbwriel a chyfrif cyfeiriadau, ond mae Solod yn darparu gwirio math a chanfod damweiniau ar gyfer mynediad arae y tu allan i'r terfynau. Fodd bynnag, ni chynhelir unrhyw wiriadau ar gyfer dychwelyd pwyntyddion crog neu fethu Γ’ dad-ddyrannu cof. Sonnir am ddefnyddio AddressSanitizer -fsanitize=address mewn crynhowyr modern fel y prif ddull ar gyfer canfod problemau cof.
O ran perfformiad, mae rhaglenni wedi'u llunio a ysgrifennwyd yn Solod, yn y rhan fwyaf o achosion, yn gyflymach Rhaglenni Mynd:
- Mae perfformiad swyddogaethau o'r pecyn Byte unwaith a hanner yn gyflymach gyda defnydd cof union yr un fath;
- mae gweithio gyda byfferau beit 1.3 gwaith yn gyflymach wrth ddarllen a 2-4 gwaith yn gyflymach wrth ysgrifennu;
- Yn y pecyn Map, mae adferiad trwy allwedd gyfanrif 3.4 gwaith yn gyflymach, ond mae addasu allweddi 1.6 gwaith yn arafach;
- mae adferiad gan allweddi llinynnol yr un fath Γ’'r iaith Go, ond mae addasu 1.5 gwaith yn arafach;
- mae dadansoddi a fformatio cyfanrifau 2 waith yn gyflymach, ac mae rhifau pwynt arnofiol 1.5/1.2 gwaith yn gyflymach;
- Mae ffwythiannau llinynnol 1.3 gwaith yn gyflymach, ac mae creu llinynnau 2-4 gwaith yn gyflymach gyda gostyngiad o 10-20% yn y defnydd o gof.
Ffynhonnell: linux.org.ru
