Блог*
#rustforlinux #suckassstory TL:DR: Тем временем в Linux один активный долбоёб мейнтейнер Christoph Hellwig активно мешает #Rust for Linux. DMA (Direct memory access) — технология, предоставляющая (относительно) прямой доступ к RAM для периферии. Это позволяет…
#suckassstory
Resigning as Asahi Linux project lead
Гектор Мартин снял с себя полномочия главы проекта Asahi Linux. Сам проект продолжит жить без его участия.
I cannot work with those who say I’m the problem and everything is going great, while major supporters and maintainers are actively resigning and I keep receiving messages from all kinds of people saying they won’t touch the Linux kernel with a 10-foot pole.
Resigning as Asahi Linux project lead
Гектор Мартин снял с себя полномочия главы проекта Asahi Linux. Сам проект продолжит жить без его участия.
I cannot work with those who say I’m the problem and everything is going great, while major supporters and maintainers are actively resigning and I keep receiving messages from all kinds of people saying they won’t touch the Linux kernel with a 10-foot pole.
marcan.st
Resigning as Asahi Linux project lead
Update: Thank you everyone for all the heartfelt and encouraging emails in response to this post. I can’t reply to all of them, but I do read every single one. <3
Back in the late 2000s, I was a major contributor to the Wii homebrew scene. At the time, I…
Back in the late 2000s, I was a major contributor to the Wii homebrew scene. At the time, I…
😢11🤡3🔥1
#prog #cpp #article
Why safety profiles failed
TL;DR:
10 лет назад Страуструп и Ко представили идею safety profiles: набор стандартизированных статических анализаторов, которые бы увеличивали безопасность кода на C++, причём практически без изменений исходного кода, и которые можно было бы активировать одной командой компилятора. Идея оказалась настолько привлекательной, что комитет по C++ (WG21) принял несколько предложений касательно профилей.
Однако за 10 лет весь выхлоп от профилей весьма мал: криво работающий -Wlifetime и... Вроде бы всё. Даже спецификации какой-то за столько времени так и не сделали.
В своём тексте Sean Baxter, автор компилятора Circle, пишет о том, почему идея safety profiles не работает и, более того, в принципе не может работать.
Why safety profiles failed
TL;DR:
10 лет назад Страуструп и Ко представили идею safety profiles: набор стандартизированных статических анализаторов, которые бы увеличивали безопасность кода на C++, причём практически без изменений исходного кода, и которые можно было бы активировать одной командой компилятора. Идея оказалась настолько привлекательной, что комитет по C++ (WG21) принял несколько предложений касательно профилей.
Однако за 10 лет весь выхлоп от профилей весьма мал: криво работающий -Wlifetime и... Вроде бы всё. Даже спецификации какой-то за столько времени так и не сделали.
В своём тексте Sean Baxter, автор компилятора Circle, пишет о том, почему идея safety profiles не работает и, более того, в принципе не может работать.
👍2
#prog #rust хайлайты:
▪️Стабилизировали апкаст трейтов:
Больше никаких костылей с внедрением методов для апкаста в определения самих трейтов! Жаль, конечно, что только сейчас, по хорошему это ещё с первой версии должно было быть.
▪️Стабилизировали HashMap::get_many_mut (под именем
▪️Не столь существенно, как предыдущие варианты, но: стабилизировали Vec::pop_if. Не то чтобы прям остро необходимая вещь, но иногда полезная, и теперь позволяет обойтись без возни с unwrap.
▪️Стабилизировали апкаст трейтов:
trait Super {}
trait Sub: Super {}
fn upcast(x: &dyn Sub) -> &dyn Super {
x
}
Больше никаких костылей с внедрением методов для апкаста в определения самих трейтов! Жаль, конечно, что только сейчас, по хорошему это ещё с первой версии должно было быть.
▪️Стабилизировали HashMap::get_many_mut (под именем
get_disjoint_mut
). Итоговая версия возвращает массив опциональных ссылок, что, возможно, не совсем удобно для наиболее частого случая, но позволяет обработать ситуацию, когда найдена только часть нужных значений. Эта версия также паникует на одинаковых ключах. Чтобы избежать этого, можно воспользоваться unsafe вариантом get_disjoint_unchecked_mut
— не проверяет одинаковость ключей, но даёт UB, если предусловие не выполнено.▪️Не столь существенно, как предыдущие варианты, но: стабилизировали Vec::pop_if. Не то чтобы прям остро необходимая вещь, но иногда полезная, и теперь позволяет обойтись без возни с unwrap.
GitHub
Stabilize `feature(trait_upcasting)` by WaffleLapkin · Pull Request #134367 · rust-lang/rust
This feature was "done" for a while now, I think it's finally time to stabilize it! Stabilization report: #134367 (comment).
cc reference PR: rust-lang/reference#1622.
Clo...
cc reference PR: rust-lang/reference#1622.
Clo...
👍3❤1🤔1🤯1
Forwarded from Мемный Болт Генона
Linus Torvalds Would Reportedly Merge Rust Kernel Code Over Maintainer Objections
https://www.phoronix.com/news/Torvalds-Override-On-Rust-Code
Открытка @itpgchannel
https://www.phoronix.com/news/Torvalds-Override-On-Rust-Code
Открытка @itpgchannel
😁28👍3🥴2