Новости

Post Thumbnail

esp32 http2 сервер

Вот у людей времени дофига. Автор демонстрирует, как он запускает HTTP/2-сервера с TLS 1.3 на микроконтроллере ESP32-WROVER-E. Сервер написан на Rust с помощью собственного крейта WTX, Embassy и официальных ESP-крейтов. Сервер слушает порт 9000, выполняет п...

Post Thumbnail

SteelMC

Чувак рассказал про свой SteelMC. Это Minecraft-сервер на Rust, который "блок за блоком" добился паритета по генерации мира с ванильным сервером после девяти месяцев разработки. Автор запилил многопоточный "chunk pyramid" - планировщик, продвигающий чанки ч...

Post Thumbnail

Самодельные арены в Rust

В статье автор рассказывает про реализацию арен в Rust с нуля. Получилось такое себе пошаговое руководство от простейшей обертки над Vec до продвинутой версии с сырыми буферами, UnsafeCell и поддержкой динамических типов через nightly-фичу allocator_api. Ав...

Post Thumbnail

GDPatch

GDPatch - это новый универсальный загрузчик модов для Godot 4.x, написанный на Rust, который вместо патчинга движка или игровых файлов перехватывает системные вызовы файловой системы, подменяя .pck-файлы и перенаправляя чтения на модифицированный контент. Тако...

Post Thumbnail

А теперь переписываем на Zig

Окей, Bun переписывают с Zig на Rust. Но вы что думаете, только на Rust всё переписывают? Нифига! Команда языка Roc за полтора года переписала свой 300 000-строчный компилятор с Rust на Zig и реализовала почти весь функционал оригинала. Основной причиной...

Post Thumbnail

Свой 3d редактор

Это первый эпизод серии туториалов по созданию простого 3D-редактора сцен на движке Bevy 0.19. Проект вдохновлен Blender. Теоретически, его можно будет использовать для разработки игровых миров, где редактор и игра используют одну и ту же ECS-архитектуру. ...

Post Thumbnail

Сокращатель ссылок на rust

Это вводная статья серии по бэкенд-разработке на Rust и Axum. Автор на примере создания сокращателя URL разбирается веб-фреймворк Axum и объясняется как он устроен. По сути, Axum это надстройка поверх Hyper, Tower и асинхронной среды Tokio. Автор раскр...

Post Thumbnail

Gossamer

Новый пятничный язык программирования, вдохновленный Rust но с горутинами на M:N-планировщике и моделью памяти, близкой к Swift Без borrow checker'а. Для сборщика муссора используется не трассировка, а подход Swift: детерминированный подсчет ссылок с автома...

Post Thumbnail

Миллиард строк

Автор проходит One Billion Row Challenge на Rust - задачу по обработке файла с миллиардом строк метеоданных за минимальное время. В 10-часовом стриме он итеративно оптимизирует решение: от наивной версии через отказ от парсинга UTF-8 и мапинга файла в память ...

Post Thumbnail

WAL-RUS

ClickHouse Cloud переписали утилиту для бэкапов и WAL-архивирования Postgres с Go на Rust. В результате появился WAL-RUS - опенсорсный инструмент, у которого пиковое потребление виртуальной памяти более чем на 70% ниже, чем у WAL-G. Это достигнуто за счет прям...

Post Thumbnail

6 связанных списков

"Learning Rust With Entirely Too Many Linked Lists" - это прикольный учебный материал, где автор учит основам и продвинутым концепциям Rust через реализацию шести разных связных списков - от плохого односвязного стека до production-unsafe двусторонней очереди,...

Post Thumbnail

Асинхронный Rust в трех частях

Совсем не свежие но все еще очень актуальные и полезные статьи про устройство ассинхронности Rust в трех частях Async/await, или "асинхронный ввод‑вывод" - это функция языка, которая позволяет программам выполнять несколько задач одновременно. Это в некото...

Post Thumbnail

Аллокации в Rust

Автор заметили, что Rust-сервис после обработки всплеска событий не возвращает память операционной системе - RSS остается высоким, хотя настоящих утечек в коде нет. Оказалось, что стандартный аллокатор glibc плохо подходит для его сценария: короткоживущие ...

Post Thumbnail

Перед main

До вызова main() в Rust существует полноценная фаза инициализации, в которой рантайм языка настраивает панику, аргументы командной строки и другие подсистемы, и разработчик тоже может использовать это однопоточное и детерминированное окружение. Все работае...

Post Thumbnail

Как работает асинхронность

Это первая глава серии об async Rust, которая строит мост между пониманием внутреннего устройства и практическим использованием Tokio. Автор начинает со сравнения асинхронности в Rust и JavaScript, рассказвает как в Rust все работает без евентлупа — асинхр...

Post Thumbnail

Git на Rust через AI

Автор решил провести эксперимент по использованию AI-агентов для создания Grit - написанной с нуля библиотечно-ориентированной реализации Git на memory-safe Rust. За несколько месяцев и миллиарды токенов автоматизированные рабочие процессы успешно сгенерировал...

Post Thumbnail

Свой Max с E2E

Статья про кастомный клиент для Max с сквозным шифрованием и все это на Rust. Отличный хобби проект, я теперь тоже такое хочу

Post Thumbnail

58 720 256 ключей

Статья о крупном инциденте в рабочем процессе LinkedIn, когда их база данных, написанная на Rust, испытывала 15-секундные зависания из-за того, что стандартная библиотечная HashMap достигла ровно 58 720 256 ключей и вызвала автоматическое изменение размера. ...

Post Thumbnail

Rust на Kindle

Автор джейлбрейкнул Kindle Paperwhite 7-го поколения и научился кросс-компилировать Rust-приложения под него через cargo-zigbuild. Тут такое прикольное пересечение миров Zig и Rust Чтобы выводить графику, он подключил Slint с программным рендерером, отрисов...

Post Thumbnail

Визуальный туториал по bevy

Визуальный обзор Bevy — игрового движка на Rust с data-driven архитектурой. Всё по паттерну ECS: игра строится из маленьких независимых систем, которые оркестрируются шедулером и могут выполняться параллельно. Сущности — это просто наборы компонентов, пр...

Post Thumbnail

Руководство по миграции с Go на Rust

Подробное руководство по миграции с Go на Rust для бэкенд-сервисов. Автор объясняет, что Go и так достаточно быстр, поэтому главная мотивация для перехода - гарантии корректности. Rust через систему типов устраняет nil-паники, состояния гонки и забытые обр...