1.83K subscribers
3.3K photos
132 videos
15 files
3.58K links
Блог со звёздочкой.

Много репостов, немножко программирования.

Небольшое прикольное комьюнити: @decltype_chat_ptr_t
Автор: @insert_reference_here
Download Telegram
Несмотря на то, что компилятор не следит за сырыми указателями, есть интерпретатор кода miri, который позволяет проверять корректность кода динамически. Мой первый вариант кода использовал std::mem::transmute для того, чтобы принудительно перезаписать lifetime, а ссылки брались через get_unchecked_mut. Этот вариант давал ошибку в miri. Я не был уверен, кто был в данном случае неправ, поэтому задал соответствующий вопрос в официальном Rust чате в Discord. Очень хороший человек @udoprog потратил время на то, чтобы разобраться в моём коде и указать мне на то, что я действительно провоцирую подобным образом UB (так что miri таки был прав), и предложил использовать сырые указатели. Спасибо, @udoprog
Forwarded from Nick
Боров чекер звучит как работа лесника
Блог*
#prog #article Изобретаем JPEG Замечательная статья про устройство JPEG
Собственно, артефакты кодирования в виде квадратов на градиентах понятно откуда берутся. Я тут подумал: а что, если кодировать кусок, принимая во внимание не только данные в нём, но и вокруг него? По идее, это должно уменьшить артефакты. С другой стороны, это может снизить эффективность сжатия.

Почти уверен, что мысль не нова и уже кому-то приходила в голову. Если вы знаете о практической реализации этой идеи - напишите в чат, пожалуйста: @decltype_chat_ptr_t
С новым годом!
С новым годом, @aspirin_pp
Forwarded from Αλεχ Zhukovsky
айфоны - это го от мира смартфонов
Forwarded from The After Times
#prog #rust #article (🔁✏️➡️🦀)

Rewriting m4vgalib in Rust

"The results so far? The Rust implementation is simpler, shorter (in lines of code), faster, and smaller (in bytes of Flash) than my heavily-optimized C++ version — and because it's almost entirely safe code, several types of bugs that I fought regularly, such as race conditions and dangling pointers, are now caught by the compiler."
Forwarded from Jem
Forwarded from Alex Levin
Представил в голове мир, где если у тебя итальянская локаль, то 44 > 1000 ибо сначала в римские числа переводит.
Вот уже который день пытаюсь написать на Rust бинарное дерево, параметризованное глубиной, до которого ветви хранятся напрямую, а при превышении этой глубины хранится само дерево в Box. Каждый раз натыкаюсь на зацикливание при разрешении trait bounds. Обидно.