Forwarded from Международное общественное движение ЛГБТ
Вот определение Верховного суда, по которому Международное общественное движение ЛГБТ не является Международным общественным движением ЛГБТ и, вероятно, не является экстремистским. Правовая коллизия: чтобы доказать, что мы не экстремисты, нам сначала нужно оспорить это определение и доказать, что экстремисты — мы.
🤡12🤔3😁1
Forwarded from Лентач
ЯГОМИК не пошёл по стопам ВСЕГЕИ и решил остаться ЯГОМИКом.
Якутский государственный объединенный музей истории и культуры народов Севера им. Ярославского не планирует отказываться от своего названия, заявил директор музея Николай Бугаев в комментарии для «КП-Якутия».
«Что касается аббревиатуры — мы ведь ее уже лет 20 нигде не используем, а для сокращения пишем «Якутский музей». Просто кто-то вспомнил об этом в свете изменения аббревиатуры ВСЕГЕИ и счел это забавным. Нам же подобный интерес только на руку».
Напомним, что Всероссийский научно-исследовательский геологический институт имени А. П. Карпинского (ВСЕГЕИ) изменил логотип на своем сайте после принятия закона о запрете ЛГБТ*-пропаганды в России.
*Движение ЛГБТ признано экстремистским и запрещено в РФ.
Якутский государственный объединенный музей истории и культуры народов Севера им. Ярославского не планирует отказываться от своего названия, заявил директор музея Николай Бугаев в комментарии для «КП-Якутия».
«Что касается аббревиатуры — мы ведь ее уже лет 20 нигде не используем, а для сокращения пишем «Якутский музей». Просто кто-то вспомнил об этом в свете изменения аббревиатуры ВСЕГЕИ и счел это забавным. Нам же подобный интерес только на руку».
Напомним, что Всероссийский научно-исследовательский геологический институт имени А. П. Карпинского (ВСЕГЕИ) изменил логотип на своем сайте после принятия закона о запрете ЛГБТ*-пропаганды в России.
*Движение ЛГБТ признано экстремистским и запрещено в РФ.
😁12👍2🤡1
#prog #rust #rustreleasenotes
Вышла версия Rust 1.75.0! Как всегда, тут только избранные моменты, а все изменения отдельно (BTW ссылка теперь ведёт не RELEASES.md, а на отдельную страницу).
▪️Само значимое изменение: теперь возможно использовать impl Trait в возвращаемых типах методов трейта и, как следствие, эквивалентные методам с RPIT async-методы. Однако текущая реализация ИМЕЕТ СУЩЕСТВЕННЫЕ ОГРАНИЧЕНИЯ, так что это не рекомендуется к использованию для публичного API. Подробнее об ограничениях (и костылях) — тут.
А, и ещё RPIT в трейтах захватывает времена жизни иначе, чем RPIT в inherent методах и свободных функциях. Подробнее тут (осторожно, может вызвать головную боль). Этот способ планируют сделать для всех impl Trait типов в возвращаемых позициях в edition 2024.
▪️В const fn сейчас нельзя использовать &mut-ссылки. Проверка для этого в компиляторе была, однако, излишне строгой. Теперь её ослабили и в const fn можно манипулировать fn pointer-ами, у которых есть мутабельные ссылки в аргументах. Но вызывать их по прежнему нельзя.
▪️Ещё изменение касательно const fn: вычисления в них с нарушением выравнивания теперь приводят к ошибке компиляции. Раньше на это был deny default линт, который можно было явно отключить.
▪️И ещё касательно невыровненных ссылок: компилятор теперь корректно ловит создание ссылок на unsized поля в #[repr(packed)] структурах.
▪️В язык и std добавлено несколько новых гарантий, о которых я упоминал:
🔸char имеет одинаковый с u32 размер и выравнивание
🔸null всегда имеет нулевой адрес
🔸для некоторых типов Option<T> вызов transmute на памяти, забитой нулями, валиден и гарантированно даёт None
А также:
🔸задокументированно, когда атомарные load валидны на readonly памяти.
▪️match теперь может матчиться на usize/isize значениях с проверкой полноты покрытия без _, а также может матчиться по (частично) перемещённым значениям, если паттерны не смотрят на значение. Это поведение консистентно с поведением
▪️Метод
▪️Стабилизированы некоторые новые API, в частности:
🔸Конструкторы ссылок на Atomic-типы из сырых указателей (unsafe, разумеется)
🔸Пачку API (включая платформо-специфичные) для манипуляции временны́ми атрибутами файлов
🔸Битовые операции над IP-адресами
🔸Option::as{, _mut}_slice.
🔸Пачку методов для сырых указателей с указаниями смещений в байтах, а не в размерах указываемого типа.
Также в const контексте теперь можно вызывать:
🔸
▪️Некоторые улучшения rustdoc:
🔸Генерируется предупреждение, когда трейт не является object safe.
🔸Атрибут #[repr(transparent)] скрывается, если поле, над которым тип является transparent, является приватным (поскольку в этом случае repr наверняка является деталью реализации)
🔸Для C-like (с вариантами без полей) enum теперь показываются дискриминанты вариантов.
▪️Компилятор (конкретно librustc_driver) теперь оптимизируется при помощи BOLT — специального инструмента для оптимизации скомпилированных программ, который переставляет инструкции для лучшей утилизации кеша. Даёт прибавку в скорости.
▪️Маленькие функции теперь автоматически инлайнятся через границу крейтов. Дало большой выигрыш и по primary, и по secondary бенчмаркам — причём для времени компиляции даже лучше, чем для рантайм-бенчмарков.
Вышла версия Rust 1.75.0! Как всегда, тут только избранные моменты, а все изменения отдельно (BTW ссылка теперь ведёт не RELEASES.md, а на отдельную страницу).
▪️Само значимое изменение: теперь возможно использовать impl Trait в возвращаемых типах методов трейта и, как следствие, эквивалентные методам с RPIT async-методы. Однако текущая реализация ИМЕЕТ СУЩЕСТВЕННЫЕ ОГРАНИЧЕНИЯ, так что это не рекомендуется к использованию для публичного API. Подробнее об ограничениях (и костылях) — тут.
А, и ещё RPIT в трейтах захватывает времена жизни иначе, чем RPIT в inherent методах и свободных функциях. Подробнее тут (осторожно, может вызвать головную боль). Этот способ планируют сделать для всех impl Trait типов в возвращаемых позициях в edition 2024.
▪️В const fn сейчас нельзя использовать &mut-ссылки. Проверка для этого в компиляторе была, однако, излишне строгой. Теперь её ослабили и в const fn можно манипулировать fn pointer-ами, у которых есть мутабельные ссылки в аргументах. Но вызывать их по прежнему нельзя.
▪️Ещё изменение касательно const fn: вычисления в них с нарушением выравнивания теперь приводят к ошибке компиляции. Раньше на это был deny default линт, который можно было явно отключить.
▪️И ещё касательно невыровненных ссылок: компилятор теперь корректно ловит создание ссылок на unsized поля в #[repr(packed)] структурах.
▪️В язык и std добавлено несколько новых гарантий, о которых я упоминал:
🔸char имеет одинаковый с u32 размер и выравнивание
🔸null всегда имеет нулевой адрес
🔸для некоторых типов Option<T> вызов transmute на памяти, забитой нулями, валиден и гарантированно даёт None
А также:
🔸задокументированно, когда атомарные load валидны на readonly памяти.
▪️match теперь может матчиться на usize/isize значениях с проверкой полноты покрытия без _, а также может матчиться по (частично) перемещённым значениям, если паттерны не смотрят на значение. Это поведение консистентно с поведением
let _ = expr;
.▪️Метод
std::split_inclusive
теперь возвращает итератор, который корректно реализует DoubleEndedIterator в том плане, что возвращает одни и те же кусочки строки при итерации как в прямом, так и в обратном порядке.▪️Стабилизированы некоторые новые API, в частности:
🔸Конструкторы ссылок на Atomic-типы из сырых указателей (unsafe, разумеется)
🔸Пачку API (включая платформо-специфичные) для манипуляции временны́ми атрибутами файлов
🔸Битовые операции над IP-адресами
🔸Option::as{, _mut}_slice.
🔸Пачку методов для сырых указателей с указаниями смещений в байтах, а не в размерах указываемого типа.
Также в const контексте теперь можно вызывать:
🔸
MaybeUninit::assume_init_read🔸
MaybeUninit::zeroed🔸
mem::discriminant🔸
mem::zeroedНасчёт
Option::as_slice
у вас мог возникнуть резонный вопрос, чем этот метод лучше opt_value.map_or(&[],
std::slice::from_ref)
. Дело в том, что такой прямолинейный метод будет использовать некий посторонний адрес для случая, когда значение является None
, а новый метод старается по возможности вернуть ссылку на слайс с адресом, совпадающим с адресом исходного опционального значения.▪️Некоторые улучшения rustdoc:
🔸Генерируется предупреждение, когда трейт не является object safe.
🔸Атрибут #[repr(transparent)] скрывается, если поле, над которым тип является transparent, является приватным (поскольку в этом случае repr наверняка является деталью реализации)
🔸Для C-like (с вариантами без полей) enum теперь показываются дискриминанты вариантов.
▪️Компилятор (конкретно librustc_driver) теперь оптимизируется при помощи BOLT — специального инструмента для оптимизации скомпилированных программ, который переставляет инструкции для лучшей утилизации кеша. Даёт прибавку в скорости.
▪️Маленькие функции теперь автоматически инлайнятся через границу крейтов. Дало большой выигрыш и по primary, и по secondary бенчмаркам — причём для времени компиляции даже лучше, чем для рантайм-бенчмарков.
blog.rust-lang.org
Announcing Rust 1.75.0 | Rust Blog
Empowering everyone to build reliable and efficient software.
🔥8❤🔥3👍2🎉1
Forwarded from Ева Морозова (Eva)
Media is too big
VIEW IN TELEGRAM
села я память на телефоне почистить, но видосики сами сложились в кремлёвский репортаж и из недр моих изошёл голос диктора
😁15🤮7❤🔥1🖕1
Forwarded from Пездуза
Пездуза
Please open Telegram to view this post
VIEW IN TELEGRAM
😁11🤮3❤1👍1🥰1
Подписчики, напишите, пожалуйста, какие, на ваш взгляд, есть преимущества у property в языках программирования?
Буду рад, если вы не будете копировать инфу из Википедии/ответа ChatGPT, а будете писать, исходя из собственного опыта использования.
Буду рад, если вы не будете копировать инфу из Википедии/ответа ChatGPT, а будете писать, исходя из собственного опыта использования.
Forwarded from a couple of words for you, cutie pie
😍6
#music
Новогоднее настроение само не появится, так что вот вам немного ABBA-постинга.
Dancing Queen
Mamma Mia
Gimme gimme gimme (a man after midnight)
Новогоднее настроение само не появится, так что вот вам немного ABBA-постинга.
Dancing Queen
Mamma Mia
Gimme gimme gimme (a man after midnight)
YouTube
ABBA - Dancing Queen (Official Music Video)
REMASTERED IN HD – UP TO 4K!!
Listen to more music by ABBA: https://abba.lnk.to/musicID
Get the latest official ABBA merch: https://abba.lnk.to/SHOPABBA
Read More About ABBA: https://www.abbasite.com/
Video produced by: Lasse Hallström
#ABBA #DancingQueen…
Listen to more music by ABBA: https://abba.lnk.to/musicID
Get the latest official ABBA merch: https://abba.lnk.to/SHOPABBA
Read More About ABBA: https://www.abbasite.com/
Video produced by: Lasse Hallström
#ABBA #DancingQueen…
❤🔥3👎2👍1