← На главную

Solod: подмножество Go без рантайма и GC транслируется в C11, не готов

13.07.2026 16:38 · hackernews

Антон Жиянов выпустил Solod (сокращённо So) — строгое подмножество Go, которое транслируется в обычный C11. Пишешь код на Go, получаешь читаемый C на выходе. Никакого рантайма: нет сборщика мусора, подсчёта ссылок или скрытых аллокаций. Стандартная библиотека портирована из Go — привычные типы и функции работают «из коробки».

Встроенная C-интероп без CGO и накладных расходов: можно вызывать C из So и So из C. Все инструменты Go работают как обычно — подсветка синтаксиса, LSP, линтинг, даже go test. So поддерживает структуры, методы, интерфейсы, срезы, мапы, множественные возвраты и defer. По умолчанию всё выделяется на стеке, куча — опционально через стандартную библиотеку. Дженерики есть, но ограничены. Конкурентность вынесена в стандартную библиотеку, не встроена в язык.

Проект рассчитан на Go-разработчиков, которым нужен низкоуровневый контроль без изучения нового языка, и на C-программистов, которым нравится безопасность, структура и инструментарий Go. На сайте есть playground — можно запустить код или посмотреть, в какой C он транслируется.

Сейчас So не готов к продакшену, но автор предлагает попробовать на хобби-проектах. Текущий релиз — v0.2 (июль 2026). В нём добавили поддержку сетевого взаимодействия, WebAssembly и freestanding mode. Следующая версия 0.3 принесёт встроенную поддержку конкурентности. Исходники на GitHub, вся документация по установке, языку и стандартной библиотеке — там же.

Читать оригинал →