1.96K subscribers
3.93K photos
150 videos
15 files
4.09K links
Блог со звёздочкой.

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

Небольшое прикольное комьюнити: @decltype_chat_ptr_t
Автор: @insert_reference_here
Download Telegram
#prog #rust #article #successstory

Rust PNG crate gets even faster, used by GNOME and Chromium

Rust png crate, also known as image-png, implements PNG encoding and decoding in safe Rust. It is compliant with the third edition of the PNG specification, including APNG support.
A year ago it was already the fastest PNG decoder in the world. Since then it has gotten even faster.

<...>

image-png is used as the default PNG implementation in Chromium since M139 (August 2025) across all platforms [выделение моё], both on desktop and on mobile.

This required meeting a remarkably high bar in terms of features, performance, correctness, compatibility and security. It would only ship if there were no regressions in any of those categories!
🔥7
#prog #rust #article

It's not me, it's the compiler!

TL;DR: чел писал парсер и обнаружил, что rustc неправильно компилирует код, в котором есть прямой каст из bool в u32 (а если семантически эквивалентный if, то нормально). Баг подтвердили, причиной была некорректная оптимизация на уровне MIR.
19😱2
#prog #article

Abstraction: Not What You Think It Is

As the quoted writers show, people do not even agree what abstraction means. <...>

This situation is particularly sad for me as someone with a background in PL theory. There are a lot of topics in software engineering that are the result of accumulated intuition over decades. But we've had a pretty good definition of abstraction since 1977, originally in the context of program analysis, and — I claim — it actually translates quite well into a precise definition of “abstraction” in engineering.


TL;DR: абстракции — это сугубо умозрительные конструкции, которые не отображаются ни на какую конкретную конструкцию языка программирования напрямую, и в силу своей природы разные абстракции можно строить, не трогая исходный код вообще. Перед тем, как показать определение, автор также перечисляет вещи, которые часто называют абстракцией, но не являются ей в смысле приведённого им определения.
👍31❤‍🔥1
#prog #article

pre-commit hooks are fundamentally broken

Please just don't use pre-commit hooks. Use pre-push instead. pre-push hooks nearly avoid all of these issues.
👍11🤔1💯1
#prog #article

My Thoughts on the Bun Rust Rewrite (от Andrew Kelly, создателя Zig)

TL;DR:

The main issue here had nothing to do with the language features of Zig vs Rust, and everything to do with the diverging value systems of the two projects [Bun и Zig] and the relationship breakdown that followed.


Технические замечания, впрочем, тоже есть.
🤔1🤷1
#prog #rust #zig #article

How Our Rust-to-Zig Rewrite is Going

Переписывание в данном случае — компилятора языка Roc. В статье, разумеется, указываются причины для выбора языка реализации, и они вполне здравые.
👍5
#prog #rust #article

Query cycles: A compiler murder mystery

Или как сделать баг настолько мощный, что отваливаются отладочные инструменты.
🤔4❤‍🔥3
Блог*
Polished technical products no longer indicate effort and understanding.
#prog #zig #ml #article

Собственно, именно по этой причине в Zig запретили использование LLM вообще.

Contributor Poker and Zig's AI Ban

TL;DR: Zig foundation заинтересованы в том, чтобы контрибуторы вовлекались в сообщество и набирались экспертизы, а использование LLM очень часто на практике означает отсутствие желания разбираться и оставаться с сообществом.
👍191🖕1