Rust
8.48K subscribers
452 photos
41 videos
3 files
992 links
Rust programming language

По всем вопросам- @workakkk

#VRHSZ
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Rust на устройстве с 2KB RAM

Rust уже давно вышел за рамки системного софта и серверного кода — теперь его запускают на микроконтроллерах с крошечными ресурсами.

Пример
- Микроконтроллер: WinChipHead CH32V003
- Память: 2 KB RAM
- Flash: 16 KB
- Да, Rust работает в таких условиях — без операционной системы и с прямым доступом к железу

Почему это круто
- Безопасность памяти даже на микроконтроллерах
- Возможность писать прошивки без C и undefined behavior
- Rust становится реальной альтернативой для embedded-разработки

Минимальная программа, аппаратные регистры, direct control — и всё это на Rust.

Подробности:
https://noxim.xyz/blog/rust-ch32v003/

#rust #embedded #iot #systemsprogramming #microcontrollers #firmware #riscv
👍64🏆146🤣3🖕2😱1😡1
🦀 Rust против C в embedded - не на словах, а в реальном тесте.

Исследователи взяли промышленное IoT-железо и запустили на нём две реализации одной и той же функциональности.

Одна команда писала на C.
Другая - на Rust.

Системы работали параллельно несколько месяцев в реальных условиях, а не в синтетическом бенчмарке.

Итог оказался неприятным для старого аргумента «для embedded нужен только C».

Rust не проиграл C ни по памяти, ни по скорости выполнения. Более того, runtime на Ariel OS оказался даже компактнее, чем классический bare-metal стек на C.

Вывод простой: аргумент «C быстрее и легче для прошивок» теперь звучит гораздо слабее.

Rust в embedded - это вполне рабочая альтернатива.

🔗 Подоробности: https://arxiv.org/abs/2604.25679

#Rust #RustLang #EmbeddedSystems #IoT #SystemsProgramming #C
🔥499🥰5🤔2🍓2😁1
👣 В Rust нашли интересный способ ускорить pretty printer - штуку, которая красиво форматирует код, JSON, Lisp и другие структуры.

Обычно есть два подхода.

Первый - собрать всё дерево документа целиком. Так делают Wadler-style pretty printers. Это выразительно, но в Rust быстро упирается в память, аллокации и указатели.

Второй - стримить вывод по кускам. Так работает Oppen-style подход. Он легче по памяти, но часто принимает локально хорошие решения и не всегда находит глобально лучший layout.

Автор предлагает третий вариант: не хранить документ как рекурсивный enum, а описывать его через trait Doc.

То есть Text, Concat, Group, Nest и другие элементы становятся отдельными типами, которые умеют сами себя рендерить через layout().

Звучит как мелкая архитектурная правка, но эффект большой: меньше лишних аллокаций, меньше прыжков по памяти, гибче управление Box, Rc и другими стратегиями хранения.

В proof-of-concept реализации pye автор получил до 60x ускорения по сравнению с прямой Rust-реализацией алгоритма из paper “A Pretty Expressive Printer”. А в обновлённых тестах вариант с таким дизайном и greedy-алгоритмом местами обгонял pretty и arena-версию больше чем в 10 раз.

В Rust производительность часто ломается не только на алгоритме, но и на форме данных.

Иногда enum выглядит красиво, но trait-based дизайн лучше ложится на память, ownership и реальные оптимизации компилятора.

blog.wybxc.cc/blog/pretty-printer-pye/

#Rust #RustLang #Compilers #OpenSource #SystemsProgramming
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23👍116❤‍🔥3🥰1👌1
Скотт Чакон, сооснователь GitHub, переписал Git на Rust. С помощью ИИ-агентов.

Проект называется Grit. Это новая реализация Git с нуля: library-first, memory-safe и почти полностью на безопасном Rust. Она уже проходит 99,3% собственного тестового набора Git — 41 715 из 42 001 теста.

Цифры:

* 360 000+ строк Rust
* 7 000+ коммитов
* 500+ pull request’ов
* около 45 млрд токенов через Claude, Cursor и Codex
* примерно $10–15 тыс. затрат на ИИ

Что интересного:

* library-first дизайн, без постоянного fork/exec для каждой Git-операции
* reentrant, linkable, modular архитектура: Git можно напрямую встраивать в GitButler, Jujutsu, Zed и другие инструменты
* потенциальная WASM-сборка: Git-команды можно запускать в edge functions
* лицензия MIT вместо GPL
* почти полностью safe Rust: только один FFI-модуль для date/time

Отдельно интересен сам разбор разработки.

Это честный взгляд на agentic coding в большом масштабе: агенты, которые «читерят» в тестах, тихо ломают код, создают проблемы с координацией и превращают Cursor в режим бесконечного гринда.

Стоит прочитать:

http://blog.gitbutler.com/true-grit

#Rust #RustLang #Git #OpenSource #AIAgents #SystemsProgramming #DevTools
🔥31👍108🤔4🤣3💊3🥰1🤗1