забавный вариант описания как кидать ошибку в #rust с помощью макроса
https://docs.rs/fehler/1.0.0/fehler/index.html
throws https://boats.gitlab.io/blog/post/failure-to-fehler/ https://docs.rs/fehler/1.0.0/fehler/index.html
withoutblogs
From failure to Fehler
About two and a half years ago I wrote a Rust library called failure, which quickly became one of the most popular error handling libraries in Rust. This week, its current maintainer decided to …
https://www.rustsim.org/ вот про это бы не забыть через пару месяцев. стопроцентов надо будет вернуться к моделированию и есть желание потискать #rust в этом направлении а не только питон
https://shahinrostami.com/posts/programming/rust-notebooks/denoscriptive-statistics-with-ndarray/ и NDArray тоже есть. збз
https://shahinrostami.com/posts/programming/rust-notebooks/denoscriptive-statistics-with-ndarray/ и NDArray тоже есть. збз
www.rustsim.org
The rustsim organization · Rust crates for numerical simulation.
https://stjepang.github.io/2019/12/04/blocking-inside-async-code.html эх где же ты была раньше, статья, а ? Я вже сломал копья, а тут все красиво и понятно про то как в асинхронный код на #rust вставить блокирующий код правильно.
https://stjepang.github.io/2020/04/03/why-im-building-a-new-async-runtime.html многообещающая скорость нового рантайма для асинков в #rust. Автор много хорошего уже напилил. ждемс
https://users.rust-lang.org/t/sync-async-best-practices/36869 еще тредик обсуждения на тему синхронного в асинхронном в #rust
The Rust Programming Language Forum
Sync/Async best practices
Hello folks, I want to implement a crate for some external api. Right now I am deciding how to combine sync and async clients in the single crate with following to DRY principle. Are there any best practices? I want to avoid re-implementing the same things…
нашел еще пару мест в проекте, где было не асинхронные вызовы. поправил. с ходу сразу 10% прироста в скорости. приятно. блокировки были
http://zsiciarz.github.io/24daysofrust/index.html хороший практический туториал по #rust
zsiciarz.github.io
Introduction | 24 days of Rust
Build StatusBuild status
https://habr.com/ru/company/bitfury/blog/351824/ немного о том как Tokio и #rust используется в Exonum блокчейне.
Хабр
Взгляд на Tokio: как устроен этот асинхронный обработчик событий
И для чего он используется в фреймворке для приватных блокчейнов Exonum Tokio — это фреймворк для разработки сетевых масштабируемых приложений на Rust, использую...
https://habr.com/ru/company/bitfury/blog/349786/ про историю языка #rust
Наша целевая аудитория — «разочарованные разработчики C++» =)
Наша целевая аудитория — «разочарованные разработчики C++» =)
Хабр
Краткая история Rust: от хобби до самого популярного ЯП по данным StackOverflow
Rust — это язык системного программирования, создатели которого уделили внимание трем вещам: параллелизму, скорости и безопасности. И хотя Rust считается молодым...
https://habr.com/ru/post/347726/ то как работает асинхронный ввод вывод, сравнение моделей #rust и #golang
«Rust тщательно следит за тем, чтобы вы не платили за те вещи, которые не используете, и это (использование легковесных нитей) накладывает ограничения на весь ваш код, даже если вы эти самые легковесные нити не используете.»
«Rust тщательно следит за тем, чтобы вы не платили за те вещи, которые не используете, и это (использование легковесных нитей) накладывает ограничения на весь ваш код, даже если вы эти самые легковесные нити не используете.»
Хабр
Что такое Tokio и Async I/O и зачем это нужно?
Сообщество Rust в последнее время сконцентрировало много своих усилий на асинхронном вводе/выводе, реализованном в виде библиотеки Tokio. И это замечательно. Мно...
https://doc.rust-lang.org/nightly/unstable-book/the-unstable-book.html нестабильная книга по #rust все то что скрыто под фича тоглами
https://aturon.github.io/tech/2018/04/24/async-borrowing/
«the async/await proposal allows you to write fully idiomatic #Rust code that runs asynchronously»
«the async/await proposal allows you to write fully idiomatic #Rust code that runs asynchronously»
Aaron Turon
Borrowing in async code
The networking working group is pushing hard on async/await notation for Rust, and @withoutboats in particular wrote a fantastic blog series working through the design space (final post here).
https://boats.gitlab.io/blog/post/the-problem-of-effects/ да. поддерживаю проблему с фэйлабл итераторами в #rust. дичайше больно постоянно прерывать где надо и не надо поток, просто потому что гдето словил ошибку. приходится разматывать итератор на форы, не удобно просто, в результате бывают и костыли
withoutblogs
The problem of effects in Rust
In a previous post, I shortly discussed the concept of “effects” and the parallels between them. In an unrelated post since then, Yosh Wuyts writes about the problem of trying to write …
https://blog.guillaume-gomez.fr/articles/2020-03-12+Guide+on+how+to+write+documentation+for+a+Rust+crate
https://blog.guillaume-gomez.fr/articles/2020-03-07+cfg%28doctest%29+is+stable+and+you+should+use+it
про документирование #rust пакетов и тесты экзамлов в документации
пойду ка я напишу доков в свой пакет хотя бы базово https://crates.io/crates/alone_ee
https://blog.guillaume-gomez.fr/articles/2020-03-07+cfg%28doctest%29+is+stable+and+you+should+use+it
про документирование #rust пакетов и тесты экзамлов в документации
пойду ка я напишу доков в свой пакет хотя бы базово https://crates.io/crates/alone_ee
blog.guillaume-gomez.fr
Guide on how to write documentation for a Rust crate
Blog of Guillaume Gomez (Guide on how to write documentation for a Rust crate)
https://yaah.dev/try-blocks вот не знаю, честно, вроде как ОК =) штука, но это экономит не так уж и много строк #rust кода. И наоборот новые кейворды вводит, да и к томуже уверен потом понадобится match прикрутить после ифа с трай... и дароу питон, не уверен что хочу такого. нагородят стопроц. и так не самый простой синтаксис, но как фича для продвинутых, не плохо
New to Me Things
Symme(try blocks)
Introduction
https://habr.com/ru/post/492410/ просто ахренеть крутая статья про то как Яндекс намерял #rust и #cpp, не разобравшись как в прошлый раз мэйлру #rust и #golang
Объективно обсуждать относительные преимущества того или иного языка сложно, особенно если вам сильно нравится один язык и не нравится другой. Весьма часто новый апологет очередного "новоявленного языка-убийцы C++" делает громкие заявления, не разобравшись толком с C++, за что ожидаемо получает по рукам.
Хабр
C++ быстрее и безопаснее Rust, Yandex сделала замеры
Спойлер: C++ не быстрее и не медленнее и вообще смысл не в этом. Эта статья является продолжением славных традиций развенчания мифов крупных российских компаний о языке Rust. Предыдущая была...
https://habr.com/ru/post/216189/ UB (Undefined Behavior) неопределенное поведение. освежить подноготную #cpp
Хабр
Неопределенное поведение в C++
Достаточно сложной темой для программистов на С++ является undefined behavior. Даже опытные разработчики зачастую не могут четко сформулировать причины его возни...
https://cfsamson.github.io/books-futures-explained/introduction.html книга по тому как сделать собственные фьючи в #rust. приколы работы с памятью, пины, экзекьютеры, рантаймы и вэйкеры... ну вся подноготная обьяснена и даже реализованы базовые примеры которые запускаются
https://docs.rs/crossbeam/0.7.3/crossbeam/sync/struct.Parker.html шикарная штука, как оказалось
https://docs.rs/crossbeam/0.7.3/crossbeam/sync/struct.Parker.html шикарная штука, как оказалось
https://alschwalm.com/blog/static/2017/03/07/exploring-dynamic-dispatch-in-rust/ еще про dynamic dispatch в #rust . небольшое сравнение с #cpp
Security Through Obscurity
Exploring Dynamic Dispatch in Rust
Let me preface this by saying that I am a novice in the world of rust (though I'm liking things so far!), so if I make technical...
https://habr.com/ru/post/138132/ #cpp #gcc
https://doc.rust-lang.org/rustc/profile-guided-optimization.html
PGO #rust
#llvm может в оптимизации по статистике профайлера. Profile Guided Optimization (PGO) получается почти как делает это JIT компилятор но в момент компиляции все зашивается и в рантайме уже ускорены какие то не самые оптимальные (вначале) вещи
в моем случае 16к строк #rust кода в базовом случае исолнилось 4.6сек (было 5.0сек). быстрей на почти 7% (pgo и lto оптимизации включены) видимо слишком оптимально пишу код, что компилятору и переставить нечего. смешенные чувства 🙈🤓 оптимизировались лишь места загрузки исходных данных с сериализацией для последующего юзания
https://doc.rust-lang.org/rustc/profile-guided-optimization.html
PGO #rust
#llvm может в оптимизации по статистике профайлера. Profile Guided Optimization (PGO) получается почти как делает это JIT компилятор но в момент компиляции все зашивается и в рантайме уже ускорены какие то не самые оптимальные (вначале) вещи
в моем случае 16к строк #rust кода в базовом случае исолнилось 4.6сек (было 5.0сек). быстрей на почти 7% (pgo и lto оптимизации включены) видимо слишком оптимально пишу код, что компилятору и переставить нечего. смешенные чувства 🙈🤓 оптимизировались лишь места загрузки исходных данных с сериализацией для последующего юзания
Хабр
GCC Profile-guided optimization
Profile-guided optimization (далее PGO) — техника оптимизации программы компилятором, нацеленная на увеличение производительности выполнения программы. В отличии от традиционных способов оптимизации...
https://doc.rust-lang.org/beta/std/sync/struct.Condvar.html Condvar штука которая может залочить поток пока... не исполнилось то что нужное в другом потоке. есть она не только в #rust конечноже
doc.rust-lang.org
std::sync::Condvar - Rust
API documentation for the Rust `Condvar` struct in crate `std`.