{"id":168367,"date":"2026-04-11T11:12:10","date_gmt":"2026-04-11T09:12:10","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si"},"modified":"2026-04-11T11:12:10","modified_gmt":"2026-04-11T09:12:10","slug":"solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/news\/solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si","title":{"rendered":"Solod \u2013 Go keele alamhulk, mis kompileeritakse C keelde","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex>      <noindex><\/p>\n<p><a rel=\"nofollow\" href=\"https:\/\/antonz.org\/solod\">Esitletud<\/a> programmeerimiskeel <a rel=\"nofollow\" href=\"https:\/\/solod.dev\">Solod (So)<\/a>, mis pakub Go keele alamsubset, mis transpileeritakse C keele (C11) vormingusse, sobides GCC, Clang ja zig cc kompilatorite koostamiseks. Solodi peamine erinevus Go-st on k\u00e4sitsi m\u00e4lu haldamise kasutamine, ilma pr\u00fcgikoristajat, automaatse m\u00e4lu eraldamise ja viidete arvestamiseta. Solodi transpiler on kirjutatud Go keeles ja <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\">levitatakse<\/a> on BSD litsentsi all. Toetab t\u00f6\u00f6tlust Linuxis, macOS-is ja Windowsis.<\/p>\n<p><\/noindex><\/noindex> <noindex><\/p>\n<p>Keel toetab struktuure, meetodeid, liideseid, viipasid, funktsioonide mitme v\u00e4\u00e4rtuse tagastamist (n\u00e4iteks tulemus + veakood), <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/doc\/generics.md\">eranditele<\/a> ja viivitusi (<a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/doc\/spec.md#defer\">defer<\/a>). Keeramise lihtsustamiseks ei toeta keel kanaleid, koost\u00f6\u00f6programme ega sulge. Solod'i keeles arendamisel v\u00f5ivad kasutada olemasolevaid LSP-servereid, linter'eid, integreetud arenduskeskkondi ja koodiredaktoreid, mis toetavad Go keelt, samuti t\u00f6\u00f6riistu \u00abgo test\u00bb.<\/p>\n<p><\/noindex> <\/p>\n<p>Solodis kirjutatud kood v\u00f5ib integreeruda C keeles rakenduste ja vastupidi (C keel saab kutsuda Solodi funktsioone ja vastupidi) ning ei vaja runtime'i. Olulised rakendusalad h\u00f5lmavad s\u00fcsteemiprogrammeerimist, mis sarnaneb C v\u00f5imalustega, kuid Go stiilis s\u00fcntaksiga ja t\u00fc\u00fcpide kontrollimise tagamisega. Solodi saab kasutada ka Go raamatukogude portimiseks C projektidesse. Go paketid, mis on portitud C keelele:<\/p>\n<ul>\n<li><a rel=\"nofollow\" href=\"https:\/\/antonz.org\/porting-go-strings\">strings<\/a><\/li>\n<li><a rel=\"nofollow\" href=\"https:\/\/antonz.org\/porting-go-io\">io (antonz.org)<\/a><\/li>\n<li>bytes<\/li>\n<li>mem<\/li>\n<li>slices<\/li>\n<\/ul>\n<p> <noindex><\/p>\n<p>ja <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/tree\/main\/so\">jne.<\/a> Lisaks <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/doc\/stdlib.md\">Solodis saab kasutada portitud Go raamatukogude kogumit<\/a> \u00fcldise C raamatukogu libc peal. <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/tree\/main\/so\/c\">\u00fcmbermoodustust<\/a> Vaikimisi eraldatakse kogu m\u00e4lu virna, kuid standardraamatuka l\u00e4bi funktsioonide<\/p>\n<p><\/noindex> <noindex><\/p>\n<p>Alloc \/ Free <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/doc\/stdlib.md#somem\">saab eraldada m\u00e4lu ka kuhja. Pr\u00fcgikoristus ja viidete arvestamine ei ole kasutusel, kuid Solodis on olemas t\u00fc\u00fcpide kontrollimise ja massiivi piiri\u00fcletusel vigade tuvastamise v\u00f5imalused. K\u00fcll aga ei tehta kontrolli rippuvate n\u00e4idikutega (dangling pointer) ja m\u00e4lu vabastamise puudumise osas. Peamine viis m\u00e4luprobleemide tuvastamiseks on AddressSanitizer -fsanitize=address modernsetes kompilaatorites.<\/a> Kompileeritud programmid, mis on kirjutatud Solodis, on enamasti<\/p>\n<p><\/noindex> <noindex><\/p>\n<p>kiiruselt sarnased Go programmidele: <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/bench\/README.md\">kiirem<\/a> rakendusi Go-l:<\/p>\n<p><\/noindex> <\/p>\n<ul>\n<li>Byte paketi funktsioonide t\u00f6\u00f6 efektiivsus on 1,5 korda kiirem sama m\u00e4lu kasutuse juures;<\/li>\n<li>T\u00f6\u00f6tlemine baitide puu-dega on 1,3 korda kiirem lugemisel ja 2-4 korda kiirem kirjutamisel;<\/li>\n<li>Map paketis on t\u00e4isarvuliste v\u00f5tmete valiku kiirus 3,4 korda kiire, kuid v\u00f5tmete muutmine on 1,6 korda aeglasem;<\/li>\n<li>Stringi v\u00f5tmete valiku kiirus on samal tasemel Go keelega, kuid v\u00f5tmete muutmine on 1,5 korda aeglasem;<\/li>\n<li>kogu numbrite anal\u00fc\u00fcs ja vormindamine on kaks korda kiirem, samas kui ujuva komakohaga on see 1,5\/1,2 korda kiirem;<\/li>\n<li>Stringide funktsioonid on 1,3 korda kiirem, ja stringide loomine on 2-4 korda kiirem, samas m\u00e4lu tarbimine v\u00e4heneb 10-20%;<\/li>\n<\/ul>\n<p>Allikas: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/development\/18263523\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Solod (So), \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u044f\u0437\u044b\u043a\u0430 Go, \u0442\u0440\u0430\u043d\u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0435 \u0432 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438 (C11), \u043f\u0440\u0438\u0433\u043e\u0434\u043d\u043e\u0435 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430\u043c\u0438 GCC, Clang \u0438 zig cc. \u041a\u043b\u044e\u0447\u0435\u0432\u044b\u043c \u043e\u0442\u043b\u0438\u0447\u0438\u0435\u043c Solod \u043e\u0442 Go \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0443\u0447\u043d\u043e\u0433\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u044c\u044e, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u0435\u0437 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u0430 \u043c\u0443\u0441\u043e\u0440\u0430, \u0431\u0435\u0437 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u0431\u0435\u0437 \u043f\u043e\u0434\u0441\u0447\u0451\u0442\u0430 \u0441\u0441\u044b\u043b\u043e\u043a. \u0422\u0440\u0430\u043d\u0441\u043f\u0430\u0439\u043b\u0435\u0440 \u0434\u043b\u044f Solod \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Go [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-168367","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Solod (So), \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u044f\u0437\u044b\u043a\u0430 Go.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/news\/solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Solod \u2014 \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u044f\u0437\u044b\u043a\u0430 Go, \u0442\u0440\u0430\u043d\u0441\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0435 \u0432 \u044f\u0437\u044b\u043a \u0421\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Solod (So), \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u044f\u0437\u044b\u043a\u0430 Go.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/news\/solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-04-11T09:12:10+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-04-11T09:12:10+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Solod \u2014 Go keele alams\u00fcsteem, mis kompileeritakse C keelde | ProHoster","description":"Esitatud on programmeerimiskeel Solod (So), mis pakub Go keele alams\u00fcsteemi.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Solod \u2014 \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u044f\u0437\u044b\u043a\u0430 Go, \u0442\u0440\u0430\u043d\u0441\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0435 \u0432 \u044f\u0437\u044b\u043a \u0421\u0438 | ProHoster","og:description":"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u044f\u0437\u044b\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Solod (So), \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439 \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u044f\u0437\u044b\u043a\u0430 Go.","og:url":"https:\/\/prohoster.info\/et\/blog\/news\/solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-04-11T09:12:10+00:00","article:modified_time":"2026-04-11T09:12:10+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/168367","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=168367"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/168367\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=168367"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=168367"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=168367"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}