Спонсорираният от Google TinyGo е нов компилатор за Go, базиран на LLVM, за да може да стартирате Go програми на микроконтролери, включително Arduino Uno, Arduino Nano33 IoT и BBC micro.bit, както и модерен браузър, използващ Web Assembly. Компилаторът е дело на The Hybrid Group, които са специализирани за създаване на софтуери, които да задвижват хардуер.

TinyGo се стреми да създаде възможно най-малък двоичен файл и се опитва да оптимизира използването на паметта. Също използва собствен runtime, който е по-малък от този на Go.

Вероятно най-забележителната характеристика на TinyGo е опитът му да поддържа модел на паметта Go, който изисква някаква поддръжка за garbage collection. TinyGo също така предоставя известна поддръжка за оптимизиране на използването на паметта, като проверява къде в програмата се разпределя действително паметта. Това може да бъде полезно, за да се избегнат разпределения на памет в основните контури.

Тагове: , , , , , , , ,