{"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\/de\/blog\/news\/solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si","title":{"rendered":"Solod \u2014 ein Teilmenge der Programmiersprache Go, die in C \u00fcbersetzt wird","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex>      <noindex><\/p>\n<p><a rel=\"nofollow\" href=\"https:\/\/antonz.org\/solod\">Vorstellung<\/a> Programmiersprache <a rel=\"nofollow\" href=\"https:\/\/solod.dev\">Solod (So)<\/a>, das ein Teilmenge der Go-Sprache bereitstellt, die in eine C (C11)-Darstellung transkompiliert wird, die von den Compilern GCC, Clang und zig cc erzeugt werden kann. Der Hauptunterschied zwischen Solod und Go besteht darin, dass die manuelle Speicherverwaltung verwendet wird, die ohne Garbage Collector, ohne automatische Speicherzuweisung und ohne Referenzz\u00e4hlung funktioniert. Der Transpiler f\u00fcr Solod ist in Go geschrieben und <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\">wird verbreitet<\/a> unter der BSD-Lizenz. Es wird die Ausf\u00fchrung unter Linux, macOS und Windows unterst\u00fctzt.<\/p>\n<p><\/noindex><\/noindex> <noindex><\/p>\n<p>Die Sprache unterst\u00fctzt Strukturen, Methoden, Schnittstellen, Slices, R\u00fcckgaben von Funktionen mit mehreren Werten (zum Beispiel Ergebnis + Fehlercode), <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/doc\/generics.md\">Generika<\/a> und verz\u00f6gerte Aufrufe (<a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/doc\/spec.md#defer\">defer<\/a>). Zur Vereinfachung werden in der Sprache keine Kan\u00e4le, Koroutinen und Closures unterst\u00fctzt. Bei der Entwicklung in der Sprache Solod k\u00f6nnen bestehende LSP-Server, Linter, integrierte Entwicklungsumgebungen und Code-Editoren, die die Sprache Go unterst\u00fctzen, sowie das Werkzeug \u201ego test\u201c verwendet werden.<\/p>\n<p><\/noindex> <\/p>\n<p>Der in Solod geschriebene Code kann in Anwendungen in C integriert werden (C kann Funktionen in Solod aufrufen und umgekehrt) und erfordert keinen Runtime-Anhang. Zu den wichtigsten Anwendungsbereichen geh\u00f6rt die Systemprogrammierung mit C-\u00e4hnlichen M\u00f6glichkeiten, jedoch mit einer Go-\u00e4hnlichen Syntax und Typpr\u00fcfungen. Solod kann auch zur Portierung von Go-Bibliotheken f\u00fcr den Einsatz in C-Projekten verwendet werden. Folgende Go-Pakete wurden nach C portiert:<\/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>und <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/tree\/main\/so\">usw.<\/a> Neben <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/doc\/stdlib.md\">einer Reihe<\/a> von portierten Go-Bibliotheken k\u00f6nnen in Programmen in Solod <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/tree\/main\/so\/c\">von Bindungen<\/a> die standard C-Bibliothek libc verwendet werden.<\/p>\n<p><\/noindex> <noindex><\/p>\n<p>Standardm\u00e4\u00dfig wird der gesamte Speicher auf dem Stack zugewiesen, jedoch kann \u00fcber die Funktionen <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/doc\/stdlib.md#somem\">Alloc \/ Free<\/a> der Standardbibliothek Speicher auf dem Heap zugewiesen werden. Garbage Collection und Referenzz\u00e4hlung werden nicht verwendet, jedoch bietet Solod Funktionen zur Typpr\u00fcfung und zum Notfallabbruch bei Array-\u00dcberl\u00e4ufen. Dabei werden keine \u00dcberpr\u00fcfungen auf die R\u00fcckgabe h\u00e4ngender Zeiger und das Freigeben von Speicher durchgef\u00fchrt. Als prim\u00e4re Methode zur Problemdiagnose in Bezug auf die Speicherverwendung wird die Verwendung von AddressSanitizer -fsanitize=address bei modernen Compilern erw\u00e4hnt.<\/p>\n<p><\/noindex> <noindex><\/p>\n<p>In Bezug auf die Leistung sind die kompilierten Programme, die in Solod geschrieben wurden, in den meisten F\u00e4llen <a rel=\"nofollow\" href=\"https:\/\/github.com\/solod-dev\/solod\/blob\/main\/bench\/README.md\">schneller<\/a> Programmen in Go \u00fcberlegen:<\/p>\n<p><\/noindex> <\/p>\n<ul>\n<li>Die Leistung der Funktionen aus dem Byte-Paket ist bei identischem Speicherverbrauch anderthalbmal schneller;<\/li>\n<li>Die Arbeit mit Byte-Puffern ist beim Lesen 1,3-mal und beim Schreiben 2-4-mal schneller;<\/li>\n<li>Im Map-Paket ist die Abfrage nach ganzzahligen Schl\u00fcsseln 3,4-mal schneller, aber die Modifikation der Schl\u00fcssel ist 1,6-mal langsamer;<\/li>\n<li>Die Abfrage nach stringbasierten Schl\u00fcsseln ist auf einer Ebene mit der Programmiersprache Go, aber die Modifikation ist 1,5-mal langsamer;<\/li>\n<li>Das Parsen und Formatieren von Ganzzahlen ist zweimal schneller, und von Flie\u00dfkommazahlen \u2014 1,5\/1,2-mal schneller;<\/li>\n<li>String-Funktionen sind 1,3-mal schneller, und das Erstellen von Strings ist 2-4-mal schneller bei einer Reduzierung des Speicherverbrauchs um 10-20%;<\/li>\n<\/ul>\n<p>Quelle: <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\/de\/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=\"de_DE\" \/>\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\/de\/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 eine Teilmenge der Sprache Go, die in die Sprache C \u00fcbersetzt wird | ProHoster","description":"Die Programmiersprache Solod (So) wurde eingef\u00fchrt, die eine Teilmenge der Sprache Go bereitstellt.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/news\/solod-podmnozhestvo-yazyka-go-transliruemoe-v-yazyk-si","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","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\/de\/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\/de\/wp-json\/wp\/v2\/posts\/168367","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=168367"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/168367\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=168367"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=168367"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=168367"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}