Мы, конечно, знаем, что программисты умнее обычных людей, но это не заставляет их автоматически правильно говорить на английском.
За наводку спасибо @lilfunctor.
youtube.com/watch?v=jXJFuqHnF2Q
За наводку спасибо @lilfunctor.
youtube.com/watch?v=jXJFuqHnF2Q
YouTube
Произношение некоторых английских слов
Предыдущее видео о транслитерации в навигации:
https://www.youtube.com/watch?v=SjjgP-8S70E
3:55 Произношение некоторых английских слов
Упоминаю слова: apple, archive, content, done, none, height, weight, width, variable, image, engine, defer, choir, tier…
https://www.youtube.com/watch?v=SjjgP-8S70E
3:55 Произношение некоторых английских слов
Упоминаю слова: apple, archive, content, done, none, height, weight, width, variable, image, engine, defer, choir, tier…
Forwarded from Oleg Andreev
Forwarded from dd if=/dev/stuff of=/dev/tg
Очень важная штука: бот для быстрого поиска по базе лекарств с недоказанной эффективность/доказанным вредом. Как человек, который сам ратует за доказательную медицину, считаю такие проекты очень важными.
https://t.me/FufloMedsBot
https://t.me/FufloMedsBot
Telegram
Расстрельный список препаратов
Лекарства, эффективность которых может быть не доказана. Отключен, альтернатива — @Encyclo_bot.
Блог*
#prog #rust А вот тут у нас хороший пример, как, казалось бы, нормальный код может спровоцировать UB. Здесь SPANS — глобальная переменная, вектор внутри RwLock. Чуть позже напишу, в чём проблема, а пока попредлагайте свои варианты
А проблема тут в том, что код для обеспечения корректности работы полагается на
impl Drop for SpanGuard
, который убирает последний вставленный span. О чём при написании unsafe-кода всегда надо помнить — так это о том, что, вообще говоря, нет гарантии, что деструкторы будут вызваны, поэтому полагаться на них для обеспечения memory safety нельзя. Так и тут: если SpanGuard
утекает (а для это достаточно просто вызвать на нём std::mem::forget
), то в глобальном векторе останется ссылка с насильно расширенным временем жизни. Если функция span
была вызвана с ссылкой на локальные данные, то после выхода из этой функции в SPANS
остаётся висячая ссылка, что прямо декларируется как undefined behaviour в Rust.