Обновить
64K+

Rust *

Мультипарадигмальный компилируемый язык

114,78
Рейтинг
Сначала показывать
Порог рейтинга

Друзья, я просто обязан сказать огромное спасибо всему сообществу Хабра за вашу поддержку и активность под статьей о моем проекте Kakehashi!

Вдохновившись вашими отзывами, вчера вечером я опубликовал проект на Hacker News. Результат превзошел все ожидания: прямо сейчас тред держит 204 поинта, а репозиторий набрал более 220 звезд на GitHub.

Проект попал в радар к хардкорным системщикам со всего мира. Среди тех, кто дал звезду, оказались инженеры из команд Cursor, Fly.io, Astro, создатель пакетного менеджера Pixi, разработчик Redox OS и в дискуссии на HN был легендарный автор утилиты Cydia @saurik.

Но мне особенно приятно и дорого то, что самый первый импульс, первые звезды и конструктивный фидбэк проект получил именно здесь. Вы дали Kakehashi тот самый стартовый заряд, благодаря которому он смог громко заявить о себе на международной арене.

Огромное вам спасибо! 

P.S. Хотел опубликовать в хаб «Я пиарюсь», но интерфейс не пропустил из-за нехватки кармы (нужно 30). Поэтому публикую в профильные хабы как апдейт к прошлой статье. Надеюсь на понимание!

Спасибо всем!
Спасибо всем!

Проект: https://github.com/wie-project/kakehashi

Статья на Хабре: https://habr.com/ru/articles/1065502/

Пост на Hacker News: https://news.ycombinator.com/item?id=49145937

Теги:
+12
Комментарии0

Представлен открытый проект pdf-inspector на Rust от команды Firecrawl. Это PDF-парсер, который умеет быстро обрабатывать страницы документов. Проект преобразует содержимое в Markdown, но при этом сохраняет структуру документа и таблицы. Решение работает без ограничений, код опубликован под лицензией MIT.

Теги:
+7
Комментарии0

Открытый ИИ-проект JCode запускается намного быстрее Claude Code и может работать в 100 сессиях одновременно: 

  • одна сессия весит всего 28 МБ оперативной памяти.

  • можно запустить целый рой ИИ‑агентов — они будут делать проект вместе, распределять обязанности и критиковать работу друг друга.

  • есть глобальная память между сессиями, чтобы не потерять ни единой строки кода.

  • работает с API Claude, OpenAI/ChatGPT/Codex, Gemini, GitHub Copilot, Azure, Alibaba Coding Plan и другими сервисами.

  • поддерживает запуск локальных моделей через Ollama и LM Studio.

  • редактирует, перезагружает, дебажит код, чтобы довести задачу до идеала.

  • можно импортировать сессии из Claude Code, Codex, OpenCode и Cursor.

  • также строит диаграммы для любой кодовой базы, чтобы вы могли быстрее и тщательнее вникнуть в проект.

Теги:
+8
Комментарии3

Агентная проверка безопасности для Rust

Сделал свой микро-Mythos на основе Anthropic's defending-code-reference-harness но для нормального языка.

Веселитесь:
https://github.com/scadastrangelove/rust-in-peace

Автономный цикл разведки → обнаружения → оценки → обнаружения → фаззинга → отчета → исправления для реальных ошибок, которые действительно затрагивают Rust: безопасность памяти в unsafe/FFI, DoS-атака из-за паники, вызванная недоверенными входными данными, доверие к десериализации (проверка целостности не является проверкой границ) и надежность Send/Sync + безопасность при панике.
Статический анализ управляет динамическим этапом — модель угроз определяет, какой санитайзер, порог фаззинга и бюджет голосования получит каждая обнаруженная ошибка.

Детекторы: Miri (неопределенное поведение), AddressSanitizer, panic/abort, hang-timeout и cargo-fuzz для динамического воспроизведения ошибок.

Если на сцене висит ружьё то не удержался и я - запустил Rust In Peace по десятку популярных ржавых ящиков. Из тех, что в топе и парсят внешние данные, чтобы с поверхностью атаки.

На удивление балалайка не только пожужжала и съела токены, но реально нашла забавное, наделала PoC-ов и фиксов — часть уже смёржена мейнтейнерами.

По состоянию на 24.07.2026 было зарегистрировано 51 сообщение об уязвимостях в 17 независимых проектах на Rust: 12 уже исправлены и в влиты в main (включая lopdf, x509-parser, quick-xml, ntex), еще 9 приняты или находятся на рассмотрении в качестве GSHA безопасности (gitoxide, quinn-proto, rustls, ciborium, h2, hyperium).

Трекер тут: https://github.com/scadastrangelove/rust-in-peace/blob/main/DISCLOSURES-PUBLIC.md

Из интересного:

Методически правильный подход через «модель угроз» работает иногда так же хорошо, как просто бахнуть бессистемно. Просто они находят разные баги. На одном таргете: threat-model-first взял глубину и логические баги, слепой прогон взял пачку генериков, которые модель угроз недооценила, поскольку слишком умная, но фаззинг подтвердил. Ничья, точнее дабл страйк.

Старая пословица «баги ходят косяками» работает. «Поищи ещё такие же», «в этой функции был такой-то баг — проверь остальные» — приёмы из репертуара Google Project Zero живее всех живых. RUSTSEC-патч закрыл что-то в парсере, но не тронул еще четыре точки входа — те же дырки. Добавил как третий срез.

Статика и фаззинг — это хорошо, но только PoC — мерило истины. Очевидно, но забывается. В половине случаев когда и агент-копатели, и «более умный» ревьюер независимо согласились, что путь достижим — оба ошибались, поймала это только реальная сборка и прогон против настоящего апстрима.

Слепой фаззинг хорошо но уже есть у большинства проектов, инструментированный cargo-fuzz еще лучше, а если на вход скормить находки анентской статики, то вообще бомба.

Всегда стоит почитать issues и проверить ветки перед тем как бахать репорт и репортить бахи. Вполне может приключится, что твоя находка уже закрыта. Просто не релизнута ещё. В табличке это отдельная строка «refound». Особенно обидно, было когда три баги все разом закрылись одним ещё не выпущенным архитектурным рефакторингом. А робото жужжал и хлопал в ладоши, эх.

Разглашение в open source не сильно отличается от «responsible disclosure» в закрытом софте: кто-то вливает фикс за час, кто-то говорит спасибо, кто-то наоборот - «это всё неправда». Как и в коммерции, отказ это не последняя инстанция: поставил себе таймер вернуться через месяц и перепроверить на сайлент-фиксы.

Ну и да, часть человеков роботов не любят и ругаются на «нейрослоп», несмотря на приложенный PoC и рабочий фикс. Ну штош, не привыкать. Неолуддизм и прочий подсчет букв ё, это святое

Если честно, сам не ожидал такого результата — штука реально работает, хоть токенов жрёт изрядно.

Теги:
+5
Комментарии0

Type-driven development в Rust: делаем недопустимые состояния невыразимыми

В своей работе наша инженерная команда довольно часто сталкивается с уникальными и сложными задачами — мы решили поделиться своей экспертизой и практическими наработками. В том числе и теми задачами, которые напрямую не связанны с информационной безопасностью.

Начинаем с type-driven development в Rust — подхода, при котором правила предметной области выражаются в типах, а код, нарушающий эти правила, не компилируется. О том, как применять его на практике расскажет Никита Тимофеенко, разработчик команды MXDR компании F6.

Серия рассчитана на тех, кто уже пишет на Rust и хочет от системы типов большего, чем борьба с borrow checker-ом. Теории типов не будет — только приёмы и шаблоны для рабочего кода, почти всё на стабильном Rust.

После первой части вы сможете посмотреть на свои структуры с флагами и Option-ами, посчитать, сколько недопустимых состояний они позволяют собрать, перепроектировать их так, чтобы эти состояния перестали компилироваться, и удалить часть defensive-проверок.

В первой статье — пять техник, каждая разобрана по схеме «проблема -> решение -> хорошие практики -> как это используют известные крейты или std библиотека».

Примеры во всей серии — из биржевой торговли, но сами приёмы работают в любом домене со сложными состояниями и правилами их изменения:

  • newtype — свой тип для каждой роли вместо голого примитива: значения разных типов не перепутать местами, а инварианты проверяются один раз — при создании (smart constructor);

  • ADT — «одно из» через enum с данными в вариантах вместо булевых флагов и Option-ов, допускающих бессмысленные комбинации;

  • uninhabited types — типы без значений: как убрать ветку ошибки, которая «никогда не случится», так, чтобы это гарантировал компилятор, а не unreachable!();

  • phantom types — параметры-маркеры без рантайм-представления: одна generic-обёртка с типом-тегом вместо семейства одинаковых newtype-ов;

  • typestate — состояние объекта в его типе: у каждого состояния свой набор методов, переход возвращает новый тип, а неверный порядок шагов не компилируется.

Первая статья — «Type-driven development в Rust. Часть 1/5: делаем недопустимые состояния невыразимыми» — уже на GitHub. Там же — компилируемые примеры ко всем приёмам: Cargo workspace, который собирается и проходит тесты.

Теги:
+5
Комментарии0

В Open Source под лицензией Apache License 2.0 выложен проект Grok Build — это терминальный агент для разработки программного обеспечения на основе искусственного интеллекта от SpaceXAI.

Решение работает в виде полноэкранного интерфейса пользователя, который понимает код, редактирует файлы, выполняет команды оболочки, осуществляет поиск в интернете и управляет длительными задачами — в интерактивном режиме, в безголовом режиме для написания скриптов/CI или встроен в редакторы через протокол Agent Client Protocol (ACP).

Теги:
+3
Комментарии1

Представлен открытый проект Voicetypr, который с помощью локальной ИИ умеет быстро транскрибировать речь:

  • благодаря аппаратному ускорению можно запустить на низкопроизводительном железе;

  • понимает более 99 языков;

  • есть клиенты под macOS и Windows;

  • есть опция автоматической вставки расшифрованного текста в поле возле курсора.

Теги:
+3
Комментарии1

Представлен лёгкий браузер для парсинга данных и ИИ‑агентов — открытый Obscura на Rust работает в разы быстрее подобных проектов и занимает меньше ресурсов, чем Сhrome или Firefox:

  • без графического интерфейса — максимальная автоматизация;

  • Stealth Mode, который скрывает признаки ИИ‑агентов. Так сайты не будут распознавать устройство как бота;

  • использует лишь 30 МБ оперативной памяти;

  • сам браузер весит около 70 МБ;

  • грузит страницы за 85 мс;

  • после запуска браузер готов к работе практически сразу без дополнительных настроек.

Теги:
Всего голосов 9: ↑9 и ↓0+11
Комментарии2

Сделал синхронизатор Телеграм канала в статический сайт.

https://github.com/vitaly-zdanevich/telegram_channel_to_static_website

Сайт генерируется через Zola.

Визуальный дизайн пока прост, минималистичен - без JavaScript. Чёрная и белая темы. Пагинация, теги, страницы. Свой CSS можно вставить через env.

Проект на Rust. Сделал через Codex gpt 5.5 xhigh.

Работает через GitHub Actions - раз в сутки перегенерирует весь сайт. Если пост изменился - он изменяется и на сайте - но в гите остаётся история.

Можно использовать и через cli - для бекапа.

Пока без использования ботов и API - через парсинг t.me - таким образом сохраняются даже короткие видео, но не аудио.

Линки на Ютуб превращаются в embed.

Комментарии пока не достаются, реакции тоже - потому что их нету на t.me

На Гитхабе и Гитлабе бесплатного места для статического сайта - гигабайт.

У меня около 1800 постов - отрабатывает за несколько минут

Определённые посты в канале - можно сделать страницами сайта. Как и заданные теги.

Пишите ваши фидбеки.

Теги:
Всего голосов 5: ↑4 и ↓1+5
Комментарии0

18 июня в 16:00 (Мск) состоится бесплатный вебинар «Rust: зачем выбирать этот язык в 2026 году?». Разберем, как Rust устраняет проблемы безопасности памяти и data races, сохраняя производительность уровня C++. Также развеем мифы про обучение Rust в 2026 году и обсудим гибридный подход интеграции с C++ через C-ABI.

На вебинаре:

✔️ Rust в 2026: цифры, тренды, кейсы

✔️ Проблемы C/C++ (use-after-free, data races) и как Rust их устраняет на уровне компиляции

✔️ Система владения и заимствования: примеры кода

✔️ Производительность: Rust vs C++ (бенчмарки)

✔️ Инструментарий: Cargo vs CMake

✔️ Гибридный подход: интеграция Rust с C++ через C-ABI

✔️ Кривая обучения в 2026 году: мифы и реальность

Предварительная подготовка:

Базовое понимание работы с памятью в C/C++ и общее представление о компиляции. Знание синтаксиса Rust не требуется.

📆 Когда: 18 июня, 16:00 — 17:00 (Мск)

👨‍🎓 Спикер: Самсонов Максим, эксперт в области разработки ПО (C/C++, Python, Rust, TypeScript, Java, JavaScript, R)

👉 Записаться

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

Microsoft представила порт набора утилит Coreutils для платформы Windows. В состав входит несколько десятков утилит, включая sort, cat, chmod, chown, cp, find, sleep, sort, tee, echo, uptime и ls. Инструментарий позволяет напрямую использовать в Windows типовые утилиты, доступные в Linux и macOS, без использования прослойки WSL. Целью проекта заявлено упрощение перехода между Unix‑подобными системами, WSL, контейнерами и Windows, и предоставление единого набора команд, флагов и методов, позволяющих переносить существующие скрипты из других систем без переписывания. Код написан на Rust и PwerShell, и распространяется под лицензией MIT.

Реализация основана на коде проекта uutils (Rust Coreutils), развивающего вариант GNU Coreutils на языке Rust, а также реализациях утилит find и grep на Rust. Утилиты собраны в виде одного универсального исполняемого файла "C:\Program Files\coreutils\coreutils.exe", отдельные команды к которому привязаны при помощи жёстких ссылок в NTFS.

Из‑за конфликта с имеющимися штатными утилитами Windows или привязки к специфичным возможностям из поставки исключены утилиты dd, dir, dircolors, shred, sync, uname, expand, kill, more, paste, timeout и whoami. Из состава также исключены утилиты, завязанные на не поддерживаемые в Windows концепции POSIX: chcon, chgrp, chmod, chown, chroot, groups, hostid, id, install, logname, mkfifo, mknod, nice, nohup, pathchk, pinky, runcon, stdbuf, stty, tty, users, who.

Из ограничений и особенностей отмечается необходимость использовать NUL вместо /dev/null, отсутствие поддержки сигналов (SIGHUP, SIGPIPE, SIGUSR), возможность создания символических ссылок только после включения режима для разработчика, недоступность некоторых операций с правами доступа. При работе с каталогами принимаются как пути с символом "/", так и c "\".

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии2

Rust Coreutils 0.9.0 вышел с важным обновлением: закрыли 44 уязвимости, но форма

льная совместимость с GNU Coreutils просела до 90,58%.

Звучит как откат, но причина в другом. Тестовый набор обновили до GNU Coreutils 9.11, туда добавили 25 новых проверок. После этого uutils прошёл 625 тестов, а 56 завалил. В прошлой версии было 630 успешных и 21 неуспешный тест, отсюда падение с 94,74%.

После аудита Zellic исправили 44 уязвимости. Много проблем было связано с расхождением поведения относительно GNU Coreutils и гонками файловой системы. Типичный сценарий: программа проверяет файл, а между проверкой и действием его успевают заменить на симлинк.

Для обычного запуска это неприятно. Для cp, chmod или mv от root это уже критично: можно добиться копирования, изменения прав или перезаписи чужого файла. Для защиты усилили безопасное копирование через uucore::safe_copy.

Параллельно продолжается техническая чистка:

- id, tr, timeout, sort, wc, tail, cp, who, factor переводят на rustix

- сокращают количество unsafe

- в cat, wc, head, tail, yes, cp, tee, unexpand используют splice(), tee() и pipe() для работы без лишнего копирования данных

- подтянули совместимость numfmt, date, tr, cksum, factor, head, stat, sort

- для ln, dd, mktemp, tty добавили сборку под WebAssembly/WASI

Хороший релиз именно для системного Rust. Здесь видно, что переписать coreutils на Rust - это не только «убрать C ради безопасности». Нужно годами догонять поведение GNU, ловить тонкие файловые гонки, вычищать unsafe и сохранять производительность на низком уровне.

Совместимость временно просела, но проект стал безопаснее и технически чище.
https://github.com/uutils/coreutils/releases/tag/0.9.0

Источник: https://t.me/rust_code/

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

⚙️ ASMLings - подробный гайд на русском

ASMLings - это набор из ~32 коротких упражнений на ассемблере Intel 8086, выстроенных по возрастанию сложности: от mov ax, 0x1337 до 32-битного сложения через carry flag, циклов, подпрограмм, работы с памятью и стеком.

Полный русскоязычный гайд по asmlings - интерактивной песочнице для изучения ассемблера Intel 8086, в которой 16-битный x86-эмулятор написан на Rust. 

Внутри: что это, как устроено под капотом, как установить, как читать и решать упражнения, разборы реальных задач из репозитория, готовые примеры в examples/ и шпаргалки.

Думаю, может быть интересно многим.

Теги:
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Ближайшие события

Разбор 100+ вопросов с собеседований Rust Полезный репо для подготовки к собеседованиям

Rust Interview Questions - это подборка вопросов, ответов и практических задач по Rust для тех, кто готовится к техническому интервью или хочет проверить, насколько хорошо понимает язык.

Внутри есть материалы по ключевым темам Rust:

  • ownership и move-семантика

  • borrowing и ссылки

  • lifetimes

  • traits и generics

  • Option и Result

  • обработка ошибок

  • память и безопасность

  • практические задачи с кодом

  • ответы и разборы

Rust нельзя нормально выучить только по синтаксису. Нужно понимать, почему borrow checker ругается, как работает владение, где появляются lifetime-ограничения и чем Rust отличается от языков с GC.

Этот репозиторий как раз про это: короткие вопросы, практические проверки и постепенное прокачивание Rust-мышления.

Подойдёт начинающим, которые уже знают базу, и разработчикам, которые хотят освежить Rust перед интервью.

GitHub: https://github.com/Develp10/rustinterviewquiestions

Теги:
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

✔️ Отец русской математики, без которого не было бы современного ML: 205 лет Пафнутию Чебышеву

16 мая 1821 года в селе Окатово Калужской губернии родился Пафнутий Львович Чебышев. Человек, без работ которого современный data science выглядел бы совсем иначе: ни тебе закона больших чисел в привычной форме, ни оценок отклонений, ни нормальной теории приближений.
Чебышев основал петербургскую математическую школу и почти 35 лет вёл кафедру математики в Санкт-Петербургском университете. Через его руки прошли Ляпунов, Марков и Стеклов, то есть люди, чьи имена сегодня встречаются в любой книге по статистике и теории вероятностей.

Главное, чем он остался в математике: многочлены Чебышева, неравенство Чебышева, результаты по распределению простых чисел и фундамент теории приближений. Если кто-то когда-то открывал учебник по ML, он сталкивался с этим неравенством в первой же главе про концентрацию меры. Многочлены Чебышева до сих пор используют в численных методах, фильтрах и аппроксимациях, на которых построены реальные инженерные системы.

Теперь обещанная история. Чебышев с детства хромал на одну ногу из-за врождённого дефекта, обычные детские игры были для него почти недоступны, и мать делала ставку на учёбу. Именно эта хромота, по воспоминаниям современников, и подтолкнула его всю жизнь возиться с механизмами: он хотел понять, как можно превратить вращательное движение в прямолинейное, чтобы шаги людей и работа машин были ровными. В итоге он построил больше 40 механических устройств, включая знаменитую стопоходящую машину, которая на Всемирной выставке в Париже в 1878 году ходила как настоящее живое существо. Это был один из первых в истории шагающих механизмов, фактически прадед современных шагающих роботов.

Ещё один штрих: Чебышев почти всю свою преподавательскую зарплату тратил на инструменты и модели для собственной мастерской, а женат так и не был, говорил, что наука для него важнее. При этом в Европе его называли просто «русский Эйлер», а Французская академия наук избрала его иностранным членом ещё при жизни.

t.me/rust_code - пишу про вайбкодинг, Rust, тестирую модели и делюсь с вами подписывайтесь!

Спасибо за внимание!

Теги:
Всего голосов 9: ↑9 и ↓0+9
Комментарии4

Rust сегодня исполняется 11 лет 🦀🎉

С версии 1.0 многое изменилось, но история языка всё ещё пишется.

От первого стабильного релиза до сегодняшнего дня Rust вырос в топовые язык, сформированный, аккуратным дизайном и крутым сообществом, которое постоянно поднимает планку качества в разработке ПО.

А когда вы начали работать с Rust? 

🎁 Пишите в комментариях.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии7

AI-агенты уже переписывают не пет-проекты, а инфраструктуру уровня Bun

История с Bun выглядит как новый уровень вайбкодинга: не лендинг, не CRUD и не маленький сервис, а почти миллион строк системного кода.

Bun изначально был написан на Zig. После покупки Anthropic проект стал ещё важнее: на нём завязана инфраструктура Claude Code, поэтому любые проблемы runtime напрямую бьют по продукту.

И вот Джарред Самнер начал эксперимент с переносом Bun на Rust при помощи Claude. Сначала это звучало как черновой ресёрч, который легко могут выбросить.

Но через несколько дней Rust-ветка уже проходила около 99.8% тестов на Linux x64 glibc, а в обсуждениях всплыл масштаб порядка 960 тысяч строк портированного кода.

AI-агенты выглядят как инструмент для радикальных миграций: язык, runtime, архитектура, огромная кодовая база.

Да, качество такого порта ещё будут долго разбирать. Да, миллион строк от агента - это не автоматически production-ready. Но сам факт уже меняет планку.

Раньше переписывание большого проекта на другой язык было историей на месяцы или годы.

Теперь это может начинаться как эксперимент на неделю.

https://github.com/oven-sh/bun/pull/30412

Источник: https://t.me/rust_code/1287 - когда посмотрим код порта, поделюсь в канале впечатлениями

Теги:
Всего голосов 8: ↑2 и ↓6-3
Комментарии7

Rust Roadmap 2026 на русском: от нуля до production-кода

Недавно я стал фанатом Rust, к чему и вас призываю)

Если давно хотели нормально зайти в Rust, а не прыгать между случайными статьями, вот хороший маршрут: полный roadmap на русском, бесплатный курс для начинающих и большая подборка полезных ресурсов.

Что внутри:

  • базовый синтаксис и первые программы

  • ownership, borrowing и lifetimes

  • Option, Result, traits и generics

  • обработка ошибок и тестирование

  • std, smart pointers и многопоточность

  • async/await и Tokio

  • macros, unsafe и FFI

  • web, CLI, embedded, WASM, gamedev и ML

  • мини-проекты на каждом этапе

Главная ценность roadmap в том, что он ведёт по Rust постепенно: сначала база, потом ключевая модель памяти, затем практические направления и реальные проекты.

Rust сложный не потому, что «невозможный», а потому что его нельзя учить хаотично. Здесь как раз есть нормальная траектория: от первых строк кода до уверенной разработки.

Сохраняйте себе и отправляйте тем, кто всё ещё боится borrow checker.

https://github.com/Develp10/rust-roadmap-ru/tree/main

Теги:
Всего голосов 6: ↑5 и ↓1+4
Комментарии1

Rust + LLM: новая и сильная “ОПГ” против C++ и его друзей…

Есть такая штука с Borrow Checker - он ненавидит людей. Не потому, что он плохой, а потому, что требует держать в голове графы данных всего приложения всё время, пока пишешь. Люди устают, раздражаются, и в итоге - unsafe, чувство стыда перед собой и коллегами, и понеслась. А LLM на это просто… скажем, кхм, “не важно”. Ну, надо так надо. LLM итерирует. И самое забавное - ей можно запретить unsafe прямо в промпте, и она не будет искать обходные пути(ну, может, разок другой - Opus попробует, но это ловится простым поиском по файлам, даже PVS-Studio не нужен, хотя с ним было бы фееричнее). Скорее всего, LLM просто найдёт решение в рамках safe Rust. И это круто.

Про Python и JS - там ведь основная проблема не скорость даже(и синтаксически значимые пробелы у некоторых), а то, что деплоится не программа, а среда. Интерпретатор, зависимости, версии, “а на проде другой питон”… Сейчас с линковщиком от Zig можно прямо из Windows собрать бинарник под Linux - статически, без танцев(привет musl!), одним пинком. И это не какой-то хак, это просто работает. Получаешь один файл, который либо запустится, либо нет - без сюрпризов в середине.

C++ тут проигрывает не потому, что он сложный или плохой - он интересный, мощный, с огромной историей и экосистемой. Но именно эта мощность становится проблемой когда код - генерирует LLM(можно выстрелить себе в ногу из гранатомёта, и, самое страшное - не заметить этого). Модель получает слишком много способов сделать что-то, и часть из них - UB. Rust убивает целый класс таких подходов к реализации на уровне компилятора. Это не договорённость и не линтер - это просто не скомпилируется.

Мне кажется, уникальность этой связки тут в том, что задачи разделились очень чисто: LLM думает про логику, компилятор думает про корректность. И они не мешают друг другу. В C++ - см. выше. Именно то, что делает Rust тяжёлым для людей(кроме евангелистов и стримеров), делает его почти идеальным для этой связки.

Ну и если кто был травмирован неудачным опытом с “вайб-кодингом”, и сложилось впечатление, что вся эта пляска с LLM, это не серьёзно - попробуйте отложить китайщину(MiniMax, GLM, DeepSeek...), взять фронтир-модель типа “OpenAI Codex GPT-5.5 на XtraHigh” - и дать ей хотелку в виде описания какого-нибудь серверного приложения на Rust, и просто посмотреть что будет через 15-20 минут. Забейте на клоунов со “змейкой” и прочей мелочёвкой из бенчмарков на ютубе, попробуйте реальную задачку(многохопывый релей между серверами со своим протоколом КВН например и клиентами для Win/Linux). Оно сделает. Быстро. Качественно. Это довольно странное ощущение, честно говоря, видеть такое…

Просто мысли вслух, хотелось поделиться)

-s. TekMetrics certified “Master C programmer”, July 1999

Теги:
Всего голосов 1: ↑1 и ↓0+2
Комментарии2

Я давний пользователь Geeknote - это cli для Evernote. Несколько лет назад проект застрял на втором Питоне - и никто не хотел его портировать на третий. Я ждал что кто-то займётся этим - но пришлось самому - так что я форкнул, починил, и даже связался с Виталием Роденко - одним из создателей Geeknote и администратора на PyPI, чтобы получить право туда пушить. За десяток лет я видел как Geeknote переходил из одни руки в другие - и как он забрасывался, и через несколько лет находился новый мантейнер. Было забавно осознать, что теперь и я стал мантейнером программного продукта, который всегда установлен на все мои машины.

Как и большинство из нас, я стал пробовать LLM - как замену поиску, для анализа кодов, советов, и вот наконец - несколько проектов - даже не читая кода - только давая команды и тестируя результат. Известная шутка - переписать на Rust. Почему бы у нет - Geeknote не велик - около пяти тысяч строк на Питоне, что я и попробовал - через Codex gpt-5.5. Несколько десятков итераций, "добавь это", "добавь то", "пропали теги", "пропала анимация" - и за несколько часов я получил рабочий Geeknote на Rust, назвал его reeknote.

Результат: быстрее работает, раза в два. Теперь буду им пользоваться.

P.S.: CLI хороши для перфоманса, SSH, быстрее разработка без GUI, а ещё похоже и для LLM - можно попросить сохранить ответ в Evernote. Как и прочие интеграции, в том числе в скриптах.

Теги:
Рейтинг0
Комментарии4