#prog #rust #article #rustlib
Статья про фреймворк для тестирования программ на Rust при помощи генерации случайных программ и их исполнения при помощи miri. За счёт применяемых методик позволяет генерировать программы, которые тайпчекаются по построению. Несмотря на пачку ограничений, авторы сумели найти несколько багов в существующих библиотеках.
"The goal of this paper is to develop a methodology for automatically generating Rust programs to effectively test Rust library APIs. The main challenge is to synthesize well-typed Rust programs to account for proper chaining of API calls and Rust’s ownership type system and polymorphic types. We develop a program synthesis technique for Rust library API testing, which relies on a novel logical encoding of typing constraints from Rust’s ownership type system. We implement SyRust, a testing framework for Rust libraries that automatically synthesizes semantically valid test cases. Our experiments on 30 popular open-source Rust libraries found 4 new bugs."
Статья про фреймворк для тестирования программ на Rust при помощи генерации случайных программ и их исполнения при помощи miri. За счёт применяемых методик позволяет генерировать программы, которые тайпчекаются по построению. Несмотря на пачку ограничений, авторы сумели найти несколько багов в существующих библиотеках.
"The goal of this paper is to develop a methodology for automatically generating Rust programs to effectively test Rust library APIs. The main challenge is to synthesize well-typed Rust programs to account for proper chaining of API calls and Rust’s ownership type system and polymorphic types. We develop a program synthesis technique for Rust library API testing, which relies on a novel logical encoding of typing constraints from Rust’s ownership type system. We implement SyRust, a testing framework for Rust libraries that automatically synthesizes semantically valid test cases. Our experiments on 30 popular open-source Rust libraries found 4 new bugs."
Forwarded from Врен о Японии для туриста
Юные японцы не знают, что такое «дискета». Юные россияне тоже, наверное, не в курсе, но в завирусившемся твите интересно другое - что люди видят вместо дискеты.
Образ автомата с напитками накрепко вшит в голову каждого японца - хоть молодого, хоть пожилого. Туристы, побывавшие в стране, тоже понимают, о чем речь и не могут теперь развидеть на иконке автомат. Он настоящий символ страны, не хуже сакуры или суши.
Образ автомата с напитками накрепко вшит в голову каждого японца - хоть молодого, хоть пожилого. Туристы, побывавшие в стране, тоже понимают, о чем речь и не могут теперь развидеть на иконке автомат. Он настоящий символ страны, не хуже сакуры или суши.
😁1
#prog #article
Why Do Interviewers Ask Linked List Questions?
Автор пытается разобраться, почему на интервью до сих пор спрашивают вопросы про связные списки.
TL;DR: ракеты_и_лошадиные_задницы.txt.
Why Do Interviewers Ask Linked List Questions?
Автор пытается разобраться, почему на интервью до сих пор спрашивают вопросы про связные списки.
TL;DR: ракеты_и_лошадиные_задницы.txt.
Hillel Wayne
Why Do Interviewers Ask Linked List Questions?
A couple years back I gave a talk on researching software history, using “linked list interview questions” as an example topic. Since referring people to a video is less accessible than just writing a blog post, I’ve reproduced the question here.
So why do…
So why do…
Кстати, в #rust стабилизировали паники в const-контекстах! 🎉 Будем ждать, когда докатится до стейбла.
UPD:
UPD:
unreachable_unchecked
тоже.GitHub
Stabilize `const_panic` by jhpratt · Pull Request #89508 · rust-lang/rust
Closes #51999
FCP completed in #89006
@rustbot label +A-const-eval +A-const-fn +T-lang
cc @oli-obk for review (not r?'ing as not on lang team)
FCP completed in #89006
@rustbot label +A-const-eval +A-const-fn +T-lang
cc @oli-obk for review (not r?'ing as not on lang team)
Forwarded from Melt!
В США FAANG, а в России ВСРАТОСЛАВ:
ВК + Сбербанк + Рамблер + Акронис + Тиньков + Озон + Суперджоб + Ланит + Авито + ВТБ
ВК + Сбербанк + Рамблер + Акронис + Тиньков + Озон + Суперджоб + Ланит + Авито + ВТБ
Forwarded from RustCon - конференция по языку программирования Rust
А в программу RustCon проходит ... Вафель!
Вот что он сам пишет про свою тему "Неочевидные прелести Rust":
В Rust много неочевидных, но очень приятных фич, особенностей, функций. Я спросил у людей, что их приятно удивило при изучении раста и собрал все ответы в один список.
Теперь я хочу рассказать об этих прелестях, чтобы как можно больше разработчиков о них знали и могли ими пользоваться :)
Несколько примеров пунктов из списка:
👉 Result: FromIterator (.collect:<Result<_, _>>())
👉 Возможность использования паттернов везде (например в аргументах функций, let)
👉 Создание массивов через [CONST; N] для T: !Copy
Тезисы других докладов смотрите на сайте
Билеты там же😉
Вот что он сам пишет про свою тему "Неочевидные прелести Rust":
В Rust много неочевидных, но очень приятных фич, особенностей, функций. Я спросил у людей, что их приятно удивило при изучении раста и собрал все ответы в один список.
Теперь я хочу рассказать об этих прелестях, чтобы как можно больше разработчиков о них знали и могли ими пользоваться :)
Несколько примеров пунктов из списка:
👉 Result: FromIterator (.collect:<Result<_, _>>())
👉 Возможность использования паттернов везде (например в аргументах функций, let)
👉 Создание массивов через [CONST; N] для T: !Copy
Тезисы других докладов смотрите на сайте
Билеты там же😉
#prog #rust #article
Статья о
Статья о
#[derive(Clone)]
и о том, почему стандартный дерайв-макрос ставит ограничение Clone
на тИповые параметры, а не на типы полей.Stegosaurus Dormant
Understanding #[derive(Clone)] in Rust
This post assumes that you have an entry-level familiarity with Rust: you’ve fought with the borrow checker enough to start to internalize some of its model; you’ve defined structs, implemented traits on those structs, and derived implementations of common…