С
Стафф-инженер
@staff_plus450 подп.
1.5Kпросмотров
12 декабря 2024 г.
📷 ФотоScore: 1.6K
На прошлой неделе посетил конференцию RustCon. Язык Rust для меня - хобби. Мне нравится новизна заложенных концепций (ownership, borrowing). Местами он похож на Ruby (еще больше на C, который я учил студентом). 💡Внутри популярных Ruby-библиотек часто скрывается код, написанный на C. В основном это специфические гемы для решения определенных задач: - эффективные структуры данных (murmurhash) - профилировщики и дебаггеры (stack-prof, byebug, ruby/debug) - cpu-bound задачи: парсинг, сериализация (pg_query, nokogiri, oj, json, puma (парсинг http1.1)) - шифрование и криптография (bcrypt, digest-crc, xxhash) - функциональные биндинги к С-библиотекам (karafka-rdkafka, grpc) - низкоуровневые библиотеки, базирующиеся на системных вызовах (semian) - клиенты для бд (pg, mysql2) 😡С появлением Rust - некоторые низкоуровневые вещи начинают писать на нем. Я провел небольшое исследование зависимостей Ruby-монолитов в Купере. Итоги: - ~450 зависимостей - 34 - используют под капотом С - 3 - используют Rust (prometheus-client-mmap, pact-ffi) Дополнительно в Ruby-экосистеме есть: - packs - аналог фреймворка модуляризации Packwerk - artichoke - альтернативная MRI-совместимая имплементация Ruby - поддержака создания ruby-гема с Rust-кодом (статья) Пока не выглядит как тренд замещения внутренностей Ruby-гемов кодом на Rust, но лед тронулся! На эту тему на конференции был классный доклад, о переводе cpu-bound задач c Python на Rust, где автору местами удалось достигнуть ускорения x3 (пока доступны только слайды).
1.5K
просмотров
1534
символов
Да
эмодзи
Да
медиа

Другие посты @staff_plus

Все посты канала →
На прошлой неделе посетил конференцию RustCon. Язык Rust для — @staff_plus | PostSniper