Опубликован релиз языка программирования общего назначения Rust 1.82, основанного проектом Mozilla, но ныне развиваемого под покровительством независимой некоммерческой организации Rust Foundation. Язык сфокусирован на безопасной работе с памятью и предоставляет средства для достижения высокого параллелизма выполнения заданий, при этом обходясь без использования сборщика мусора и runtime (runtime сводится к базовой инициализации и сопровождению стандартной библиотеки).
Методы работы с памятью в Rust избавляют разработчика от ошибок при манипулировании указателями и защищают от проблем, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей, выход за границы буфера и т.п. Для распространения библиотек, обеспечения сборки и управления зависимостями проектом развивается пакетный менеджер Cargo. Для размещения библиотек поддерживается репозиторий crates.io.
Безопасная работа с памятью обеспечивается в Rust во время компиляции через проверку ссылок, отслеживание владения объектами, учёт времени жизни объектов (области видимости) и оценку корректности доступа к памяти во время выполнения кода. Rust также предоставляет средства для защиты от целочисленных переполнений, требует обязательной инициализации значений переменных перед использованием, лучше обрабатывает ошибки в стандартной библиотеке, применяет концепцию неизменяемости (immutable) ссылок и переменных по умолчанию, предлагает сильную статическую типизацию для минимизации логических ошибок.
- Компания Volvo задействовала в электромобилях EX90 и Polestar 3 электронный блок управления (ECU) на базе CPU Arm Cortex-M, отвечающий за активацию цепей питания, в котором использована прошивка, написанная на языке Rust. Проект признан удачным и руководство рассмотрит возможность расширения использования компонентов на Rust в других подсистемах. Отмечается, что по сравнению с проектами на C и C++ в коде на Rust удалось добиться более высокого качества и меньшего уровня ошибок за счёт более жёстких требований на этапе компиляции.
- Проект lm.rs подготовил написанный на Rust движок для выполнения больших языковых моделей машинного обучения, совместимый с моделями Gemma 2, Llama 3.2 и PHI 3.5, и похожий по своему назначению на llama2.c и llm.c. Lm.rs выполняет модель с использованием ресурсов CPU и не требует для работы внешних зависимостей и библиотек. Производительность lm.rs позволяет на ПК c 16-ядерным CPU AMD Epyc обрабатывать примерно 50 токенов в секунду для модели Llama 3.2 1B. Код открыт под лицензией MIT.
- Опубликован выпуск платформы Tauri 2.0, предоставляющей написанный на Rust инструментарий для создания многоплатформенных пользовательских приложений с графическим интерфейсом, конкурирующий с платформой Electron. Как и в Electron логика работы приложения определяется на JavaScript, HTML и CSS, а программы оформляются в виде самодостаточных исполняемых файлов, компилируемых для различных операционных систем. Для отрисовки окон на платформе Linux используется библиотека GTK (GTK 3 Rust), а в macOS и Windows библиотека Tao. Интерфейс формируется при помощи библиотеки WRY с обвязкой над браузерным движком WebKit для macOS, WebView2 для Windows и WebKitGTK для Linux. Среди ключевых улучшений в новой версии: поддержка мобильных платформ iOS и Android, переработка слоя IPC (Inter Process Communication) и добавление большого числа новых модулей.
- Разработчики свободного пакета для автоматизации проектирования печатных плат LibrePCB, оптимизированного для быстрой разработки плат и предоставления как можно более простого интерфейса, представили план по разработке выпуска LibrePCB 2.0.
👉 Подробнее
@rust_code
Please open Telegram to view this post
VIEW IN TELEGRAM
https://crates.io/crates/tinyaudio
@rust_code
Please open Telegram to view this post
VIEW IN TELEGRAM
crates.io
crates.io: Rust Package Registry
Forwarded from Kali Linux
@linuxkalii
Please open Telegram to view this post
VIEW IN TELEGRAM
Инструмент py2many помогает переводить код на Python в код на различных языках, включая Rust.
Он поддерживает множество языков, таких как Rust, C++, Julia, Kotlin и другие, а также способен генерировать код Python с аннотациями типов.
Для трансляции кода используется команда в терминале, после чего сгенерированный код компилируется.
На сайте проекта доступна документация с инструкциями по установке необходимых библиотек и форматировщиков.
GitHub: https://github.com/py2many/py2many
@rust_code
Please open Telegram to view this post
VIEW IN TELEGRAM
Rethinking Builders... with Lazy Generics
https://geo-ant.github.io/blog/2024/rust-rethinking-builders-lazy-generics/
https://geo-ant.github.io/blog/2024/rust-rethinking-builders-lazy-generics/
geo-ant.github.io
Rethinking Builders… with Lazy Generics
While using compile-time builder generator crates, I realized that I had run into
a niche problem that required lot more flexibility with generic structs and
functions than I was getting. If you like, follow me down a rabbit hole
and explore the builder…
a niche problem that required lot more flexibility with generic structs and
functions than I was getting. If you like, follow me down a rabbit hole
and explore the builder…
Rustles превосходит OpenSSL и BoringSSL по производительности
https://memorysafety.org/blog/rustls-performance-outperforms/
@rust_code
https://memorysafety.org/blog/rustls-performance-outperforms/
@rust_code
www.memorysafety.org
Rustls Outperforms OpenSSL and BoringSSL
ISRG has been investing heavily in the Rustls TLS library over the past few years. Our goal is to create a library that is both memory safe and a leader in performance.
Back in January of this year we published a post about the start of our performance journey.…
Back in January of this year we published a post about the start of our performance journey.…
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Brush — это инструмент для создания 3D-моделей с помощью метода Gaussian splatting.
Онаработает на разных платформах: macOS, Windows, Linux и Android.
Программа позволяет создать 3D модель объекта, используя множество фотографий этого объекта под разными углами.
*Brust написан на я Rust. В нём используются библиотеки wgpu и Burn, которые позволяют создавать независимые бинарные файлы и запускать их на различных устройствах.
📌 Ссылка на репозиторий Brush
@rust_code
Онаработает на разных платформах: macOS, Windows, Linux и Android.
Программа позволяет создать 3D модель объекта, используя множество фотографий этого объекта под разными углами.
*Brust написан на я Rust. В нём используются библиотеки wgpu и Burn, которые позволяют создавать независимые бинарные файлы и запускать их на различных устройствах.
📌 Ссылка на репозиторий Brush
@rust_code
Уроки, извлеченные из успешного переписывания проекта на Rust
https://gaultier.github.io/blog/lessons_learned_from_a_successful_rust_rewrite.html
@rust_code
https://gaultier.github.io/blog/lessons_learned_from_a_successful_rust_rewrite.html
@rust_code
Хватит выбирать между безопасностью и скоростью. С Rust можно забыть о компромиссах!
Приглашаем вас на открытый урок 5 ноября в 20:00 мск с практическими примерами и разбором реальных кейсов.
На вебинаре вы:
– поймёте, как Rust справляется с ошибками, которые часто ломают программы;
– сравните методы борьбы с небезопасным доступом к памяти;
– найдёте скрытые баги и посмотрите, как Rust защищает от них;
– узнаете, как абстракции ввлияют на ресурсы и облегчают жизнь разработчику.
Все участники урока получат скидку на обучение на курсе «Rust Developer. Basic», который стартует совсем скоро.
Регистрируйтесь на открытый урок прямо сейчас.
#реклама
О рекламодателе
Приглашаем вас на открытый урок 5 ноября в 20:00 мск с практическими примерами и разбором реальных кейсов.
На вебинаре вы:
– поймёте, как Rust справляется с ошибками, которые часто ломают программы;
– сравните методы борьбы с небезопасным доступом к памяти;
– найдёте скрытые баги и посмотрите, как Rust защищает от них;
– узнаете, как абстракции ввлияют на ресурсы и облегчают жизнь разработчику.
Все участники урока получат скидку на обучение на курсе «Rust Developer. Basic», который стартует совсем скоро.
Регистрируйтесь на открытый урок прямо сейчас.
#реклама
О рекламодателе
Программа позволяет запускать сервер для загрузки торрентов, а также поддерживает потоковую передачу видео, включая возможность трансляции на медиаплееры вроде VLC.
Одним из преимуществ rqbit является высокая скорость работы, что делает его привлекательным выбором среди аналогичных приложений.
cargo tauri build
GitHub: https://github.com/ikatson/rqbit.
@rust_code
Please open Telegram to view this post
VIEW IN TELEGRAM
@rust_code
Please open Telegram to view this post
VIEW IN TELEGRAM
@rust_code
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Golang
Типы данных : поддержка различных типов данных, таких как строки, списки, наборы и хэши.
@golang_google
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
@rust_code
Please open Telegram to view this post
VIEW IN TELEGRAM
@rust_code
Please open Telegram to view this post
VIEW IN TELEGRAM
🚀 Лучший ресурс для работы с эмбедингами с помощью Rust 🦀
Если вы изучаете эмбецдинги и работу с ними с помощью Rust, ознакомьтесь с репозиторием awesome-embedded-rust на GitHub!
Эмбеддинг — это вектор в виде массива чисел, который получается после преобразования текста языковой моделью
Это тщательно подобранная коллекция ресурсов, инструментов и библиотек, которые помогут вам начать работу и повысить свои навыки программирования на основе встраиваемых систем.
Идеально подходит для тех, кто хочет изучить экосистему Rust в
#RustLang #EmbeddedRust #Программирование на основе RustLang
👉 Github
@rust_code
Если вы изучаете эмбецдинги и работу с ними с помощью Rust, ознакомьтесь с репозиторием awesome-embedded-rust на GitHub!
Эмбеддинг — это вектор в виде массива чисел, который получается после преобразования текста языковой моделью
Это тщательно подобранная коллекция ресурсов, инструментов и библиотек, которые помогут вам начать работу и повысить свои навыки программирования на основе встраиваемых систем.
Идеально подходит для тех, кто хочет изучить экосистему Rust в
#RustLang #EmbeddedRust #Программирование на основе RustLang
👉 Github
@rust_code