По-настоящему дрессированные псины на команду "служить" уходят на год в армию
❤16🤡13😁4😢2🤮1
#prog #article
amd64 and va_arg
Или о сложностях реализации va_list в ABI, позволяющих передачу аргументов через регистры.
amd64 and va_arg
Или о сложностях реализации va_list в ABI, позволяющих передачу аргументов через регистры.
Made of Bugs
amd64 and va_arg
A while back, I was poking around LLVM bugs, and discovered, to my surprise, that LLVM doesn’t support the va_arg intrinsic, used by functions to accept multiple arguments, at all on amd64. It turns out that clang and llvm-gcc, the compilers that backend…
Forwarded from Технологический Болт Генона
Мы живем в обществе
https://gitlab.freedesktop.org/mesa/mesa/-/issues/10803
Спасибо подписчику за ссылку
🫡11😁4🤯1
Блог*
С днём рождения, папищек!
(А теперь признавайтесь, у кого именно сегодня день рождения)
Forwarded from Neural OpenNet
Антон запаковал себя с использованием gzip и удалил первые 10 байт заголовка.
👍9
Всё время недоумевал, зачем в калькуляторе хранить историю вычислений. А сегодня внезапно пригодилось
❤9🤨3👍1
#rust
Lib.rs стал немного лучше
Из заметного:
- улучшили рендеринг markdown, приблизив его к Github flavored markdown
- ускорено кеширование контента в CDN:
The lag between crate publication and visibility on lib.rs is down from hours to ~15 minutes
- теперь есть отдельная машина для сборки крейтов, которая позволяет эмпирически определять реальную MSRV (minimal supported Rust version)
Ну и многое другое. Важно: домены libs.rs и crates.rs теперь направляют на lib.rs и в обозримом будущем перестанут работать вовсе.
Lib.rs стал немного лучше
Из заметного:
- улучшили рендеринг markdown, приблизив его к Github flavored markdown
- ускорено кеширование контента в CDN:
The lag between crate publication and visibility on lib.rs is down from hours to ~15 minutes
- теперь есть отдельная машина для сборки крейтов, которая позволяет эмпирически определять реальную MSRV (minimal supported Rust version)
Ну и многое другое. Важно: домены libs.rs и crates.rs теперь направляют на lib.rs и в обозримом будущем перестанут работать вовсе.
The Rust Programming Language Forum
Lib.rs website improvements
What's new on //lib.rs/ Social media image previews. Links to crates on lib.rs shared on on Mastodon, Facebook, etc. look fancier now. The previews are dynamically generated. For compatibility, they must be raster images, so they're PNGs rendered with…
👍4🔥2
Forwarded from Типа про IT
Там это, Дiю заопенсорсили, прям на GitHub. Угадайте какой им открыли Issue 1? Правильно, "а теперь перепишите всё на Rust" 😄
Definitely gonna use this when I start hosting my own country ©
Definitely gonna use this when I start hosting my own country ©
GitHub
Diia
Diia is an app with access to citizen’s digital documents and government services - Diia
😁14
Блог*
#prog #amazingopensource ast-grep — инструмент для структурного поиска и замены с паттернами не на уровне текста, а на уровне синтаксических деревьев. Построен поверх tree-sitter, поэтому охват языков, корректность и произодительность на уровне. Поддерживает…
Тем временем я поставил себе эту штуку и... Использовал её как search/replace с поддержкой многострочных паттернов.
И прежде, чем вы начнёте обвинять меня в неосиляторстве — я скажу, что в sed это выглядит просто кошмарно, а в GNU sed и perl получше за счёт поддержки многострочных регекспов, но всё равно не очень из-за необходимости явно прописывать часть регекспа для пробелов в начале строки (а в случае с perl ещё и странно выглядящий набор флагов). И это всё в предположении, что искомый паттерн разбит на строки именно так, как записано! А с ast-grep я могу просто скопировать нужный фрагмент кода в качестве паттерна (что я и сделал). Ну и превью действий тоже очень приятная штука.
Кстати, аргумент в пользу языков с явными делителями блоков: пользоваться таким инструментом для работы с кодом, который отбивается отступами, менее удобно. С явными делителями я могу записать любую замену в одну строку и потом поправить форматировщиком, чтобы выглядело норм.
И прежде, чем вы начнёте обвинять меня в неосиляторстве — я скажу, что в sed это выглядит просто кошмарно, а в GNU sed и perl получше за счёт поддержки многострочных регекспов, но всё равно не очень из-за необходимости явно прописывать часть регекспа для пробелов в начале строки (а в случае с perl ещё и странно выглядящий набор флагов). И это всё в предположении, что искомый паттерн разбит на строки именно так, как записано! А с ast-grep я могу просто скопировать нужный фрагмент кода в качестве паттерна (что я и сделал). Ну и превью действий тоже очень приятная штука.
Кстати, аргумент в пользу языков с явными делителями блоков: пользоваться таким инструментом для работы с кодом, который отбивается отступами, менее удобно. С явными делителями я могу записать любую замену в одну строку и потом поправить форматировщиком, чтобы выглядело норм.
❤🔥6👍3🌚1