Post Thumbnail

Автор написал игру 2048 для Game Boy Advance на Zig и объясняет, почему этот язык отлично подошел для embedded-разработки под консоль.

Байтоебство, но красивое

Главные плюсы: встроенная кросс-компиляция, система сборки, позволяющая в одном build.zig описать все шаги от линковки до кодогенерации спрайтов, и особенно packed structs с нестандартными целочисленными типами (например, u2), которые делают работу с аппаратными регистрами GBA читаемой и удобной. Ну и конечно отмечаются comptime-вычисления, автор использовал их как раз для сжатия спрайтов на этапе компиляции. Еще ему понравилась гибкая стандартная библиотека с кастомными аллокаторами

И недостатков рассказывает, что в zig ограниченная поддержка инлайн-ассемблера, невозможность указать ARM/Thumb-режим для отдельной функции, и проблемы с "weird memory" GBA, где нельзя писать в видеопамять 8-битными операциями

Похожее

Post Thumbnail

Revo

На эту пятницу у меня вас новый язык программирования, написанный на Zig Revo...

Post Thumbnail

Zig IO

В Zig 0.16 появился std.Io - кроссплатформенный интерфейс для ввода-вывода и кон...

Post Thumbnail

scripty

Scripty - это минимальный язык выражений без переменных, циклов и условий. Тольк...

Post Thumbnail

Bun в бан

Автор анализирует недавний перевод Bun с Zig на Rust, выполненный с помощью Clau...