Size: a a a

2022 January 21
Блог*
Сделал мем по мотивам https://t.me/oleg_log/5319
источник
2022 January 22
Блог*
источник
2022 January 23
Блог*
#prog #rust

Does the Bronze Garbage Collector Make Rust Easier to Use? A Controlled Experiment

Разумеется, я не мог пройти мимо статьи с подобным еретическим громким заявлением. Авторы разработали сборщик мусора, решив при помощи stack maps от LLVM проблемы идентификации корней. Как сказано в абстракте:

> We found that for a task that required managing complex aliasing, Bronze users were more likely to complete the task in the time available, and those who did so required only about a third as much time (4 hours vs. 12 hours). We found no significant difference in total time, even though Bronze users re-did the task without Bronze afterward.

Однако меня заинтересовал сам сборщик мусора. В тексте я натолкнулся на упоминание того, что в эксперименте использовалась версия, которая фактически сборку мусора не проводила. Меня это насторожило. Я пошёл смотреть исходники и увидел issue (со ссылкой на URLO) о том, что bronze позволяет иметь две мутабельные ссылки на одно и то же значение одновременно. Что вообще-то UB. Таким образом, авторы фактически проверяли не "Rust со сборщиком мусора", а "Rust с выключенным borrow checker", что фактически ставит под сомнение результаты эксперимента. Авторы при этом ничего страшного в этом не видят. Более того, в треде отметили, что авторы скопировали часть кода из rust-gc от Manish Earth, при том,что bronze имел лицензию BSD, а rust-gc — Mozilla Public License 2.0, копилефтную лицензию.

Короче, дурная история
источник
Блог*
#prog #article

The Discovery of Apache ZooKeeper’s Poison Packet — статья от 2015 года об экзотическом баге, который связал воедино баги в ZooKeeper и ядре Linux. Да, серьёзно.

(thanks @oleg_log)
источник
2022 January 24
Блог*
Какой же всё-таки у Instagram отвратительный интерфейс
источник
Блог*
Реакции?
Окончательные результаты
58%
👍
22%
Нет
20%
Кешбери
Проголосовало: 180
источник
Блог*
#rust

В сорцах rustc банят числа.
источник
Блог*
Кстати, включил
источник
2022 January 25
Блог*
Я нашёл ICE [internal compiler error], которой можно добиться за 29 символов программы 🙂

Правда ICE чисто технически в форматтере, но всё же.

macro_rules! a{()=>{A<'a,>};}
источник
Блог*
Когда я плакал, что не понимаю атомики (я и сейчас плачу, ахаха), мне посоветовали посмотреть несколько докладов, включая этот (в двух частях):

CppCon 2014: Herb Sutter "Lock-Free Programming (or, Juggling Razor Blades), Part I"
CppCon 2014: Herb Sutter "Lock-Free Programming (or, Juggling Razor Blades), Part II"

Доклад очень интересный, рекомендую!!

В начале рассказывается про атомики в целом, а потом приводятся примеры того, как их можно использовать. В самом конце убийственный пример из реальной жизни, приведу цитату: «And for better performance we'll do more heap allocations».

Доклад в большей степени ориентирован на тех кто не очень хорошо знает что такое атомики, но и для тех кто знает не плохо, думаю тоже будет полезно.
источник
Блог*
Посмотрел тут свои гисты от и до, и... Ну, неудивительно, что я Rust простым называю, я его, выходит, учу уже четыре года.
источник
Блог*
😅
источник
2022 January 26
Блог*
— Ты когда-нибудь перестанешь упоминать Rust по поводу и без?
println!("Нет");
источник
Блог*
Любителям судоку посвящается
источник
Блог*
CPython скомпилировали в WASM 👀

finally play.python.org

#prog #python #wasm
источник
2022 January 27
Блог*
#prog #article

Статья о поиске идеальной хэш-функции методом брутфорса (вместе с готовой программой для поиска)
источник
Блог*
источник
Блог*
источник
Блог*
#prog #rust #cpp #article

Being Fair about Memory Safety and Performance, или о ситуации с индексацией массивов в C++ и Rust
источник
2022 January 28
Блог*
#math #meme
источник