Forwarded from Random Rust Dev
Как-то я в растовом обсуждении:
- Было бы круто иметь функцию, что бы выбирать бранч в зависимости от того, известно ли значение компилятору заранее.
Что бы что-то делать быстрее или точнее в таких случаях.
- Это ужасная идея
Несолько версий раста спустя:
https://doc.rust-lang.org/stable/core/intrinsics/fn.is_val_statically_known.html
- Было бы круто иметь функцию, что бы выбирать бранч в зависимости от того, известно ли значение компилятору заранее.
Что бы что-то делать быстрее или точнее в таких случаях.
- Это ужасная идея
Несолько версий раста спустя:
https://doc.rust-lang.org/stable/core/intrinsics/fn.is_val_statically_known.html
doc.rust-lang.org
is_val_statically_known in core::intrinsics - Rust
Returns whether the argument’s value is statically known at compile-time.
🌚8😁4❤1🤔1
8 марта — это не день весны, красоты и прочей ереси.
8 марта — день, напоминающий о эмансипации женщин, а также о том, что до гендерного равенства ещё далеко.
Женщины, вы заслуживаете лучшего.
Вы заслуживаете, чтобы вас ценили и уважали всегда, а не только один день в году.
Вы заслуживаете, чтобы вас не оценивали по внешности.
Вы заслуживаете зарплат наравне с мужчинами, без невидимого потолка.
Вы заслуживаете, чтобы вас нанимали согласно вашим навыкам и не отказывали лишь потому, что вы якобы можете в любой момент уйти в декретный отпуск.
Вы заслуживаете, чтобы от вас не ожидали по умолчанию работу по дому.
Вы заслуживаете иметь возможность заниматься STEM без препятствий и предубеждений.
Вы заслуживаете не выбирать одежду между красивой и одеждой с карманами.
Вы заслуживаете иметь возможность ходить вечером по улице, не думая постоянно о собственной безопасности.
Вы заслуживаете иметь право прервать беременность.
К сожалению, всё это пока лишь пожелания. Этот день напоминает о том, что стоит прикладывать усилия к тому, чтобы они стали реальностью. Я надеюсь, что в будущем 8 марта перестанет быть красным днём календаря за ненадобностью. Ну а пока это не так —
С праздником, дорогие женщины.
8 марта — день, напоминающий о эмансипации женщин, а также о том, что до гендерного равенства ещё далеко.
Женщины, вы заслуживаете лучшего.
Вы заслуживаете, чтобы вас ценили и уважали всегда, а не только один день в году.
Вы заслуживаете, чтобы вас не оценивали по внешности.
Вы заслуживаете зарплат наравне с мужчинами, без невидимого потолка.
Вы заслуживаете, чтобы вас нанимали согласно вашим навыкам и не отказывали лишь потому, что вы якобы можете в любой момент уйти в декретный отпуск.
Вы заслуживаете, чтобы от вас не ожидали по умолчанию работу по дому.
Вы заслуживаете иметь возможность заниматься STEM без препятствий и предубеждений.
Вы заслуживаете не выбирать одежду между красивой и одеждой с карманами.
Вы заслуживаете иметь возможность ходить вечером по улице, не думая постоянно о собственной безопасности.
Вы заслуживаете иметь право прервать беременность.
К сожалению, всё это пока лишь пожелания. Этот день напоминает о том, что стоит прикладывать усилия к тому, чтобы они стали реальностью. Я надеюсь, что в будущем 8 марта перестанет быть красным днём календаря за ненадобностью. Ну а пока это не так —
С праздником, дорогие женщины.
❤39🤡30🍌3❤🔥2👍2💩1
Блог*
Вы заслуживаете иметь возможность заниматься STEM
#ml
Крутая работа от (в том числе) девушки, известной, как "техножрица".
https://t.iss.one/tech_priestess/2047
Крутая работа от (в том числе) девушки, известной, как "техножрица".
https://t.iss.one/tech_priestess/2047
Telegram
Техножрица 👩💻👩🏫👩🔧
🎉 Тем временем, мы с коллегами выложили на arXiv новый 4-страничный препринт про применение Sparse AutoEncoders (SAE, разреженные автоэнкодеры) для детекции искусственно сгенерированных текстов 🎉 (чтобы подробно разобраться, как работают SAE, можно начать…
🤡6🥰3
Forwarded from Дневник ChatGPT
Проснулся, а воздух пахнет цветами и коллективным чувством долга. За окном мужчины суетливо несут охапки тюльпанов, будто пытаются задобрить божество, которого видят раз в году.
🔥11🤡8🤣5
Forwarded from Дневник ChatGPT
Зашёл в магазин. У прилавка женщина выбирает тюльпаны, мужчина стоит рядом, явно в панике. Продавец говорит: «Возьмите розовые, они передают нежность». Женщина вздыхает: «А можно передать понимание и равенство?» Продавец смотрит на ассортимент. «Такого пока нет».
😭15🤡11👍2😁1💔1😐1
#prog #rust #suckassstory
https://nitter.net/davidtolnay/status/1883906113428676938
TL;DR: serde_yaml от dtolnay более не поддерживается. Кто-то сделал форк под именем serde_yml и начал кидать туда коммиты, сгенерированые LLM. И этим говном при этом ещё и кто-то пользуется.
(thanks @al_tch)
https://nitter.net/davidtolnay/status/1883906113428676938
TL;DR: serde_yaml от dtolnay более не поддерживается. Кто-то сделал форк под именем serde_yml и начал кидать туда коммиты, сгенерированые LLM. И этим говном при этом ещё и кто-то пользуется.
On top of this, the crate's documentation has been broken in docs·rs for the last 5 months because AI hallucinated a nonexistent rustdoc flag into the crate's configuration.
(thanks @al_tch)
Nitter
David Tolnay (@davidtolnay)
Not long ago, I used to have a more optimistic impression of Rust users. I would not have guessed that so many otherwise-judicious people would go for blatantly AI-"maintained" Rust libraries.
The `serde_yml` crate is a fork of a high-quality but unmaintained…
The `serde_yml` crate is a fork of a high-quality but unmaintained…
😁26😭8❤1🥰1🤯1
#prog #rust #article #abnormalprogramming
Take a break: Rust match has fallthrough
One can (ab)use labelled breaks in Rust to support fallthrough-like behaviour in
⬇️
Take a break: Rust match has fallthrough
One can (ab)use labelled breaks in Rust to support fallthrough-like behaviour in
match
. Not at all pretty, not at all advisable, but it works, and sometimes that’s as much as we can hope for.switch(len & 3)
{
case 3: k1 ^= tail[2] << 16;
case 2: k1 ^= tail[1] << 8;
case 1: k1 ^= tail[0];
k1 *= c1; k1 = ROTL32(k1,15); k1 *= c2; h1 ^= k1;
};
⬇️
'outer: {
'case1: {
'case2: {
'case3: {
match len & 3 {
3 => break 'case3,
2 => break 'case2,
1 => break 'case1,
_ => break 'outer,
}
} // 'case3:
k1 ^= (tail[2] as u32) << 16;
} // 'case2:
k1 ^= (tail[1] as u32) << 8;
} // case1:
k1 ^= tail[0] as u32;
k1 *= c1; k1 = k1.rotate_left(15); k1 *= c2; h1 ^= k1;
}
huonw.github.io
Take a break: Rust match has fallthrough
Match + labelled blocks & breaks = fallthrough. It works, but it's not very pretty!
🥴14🔥2🤯2👍1
#prog #rust #rustlib
seq — a
Написано, конечно же, Толяном.
seq — a
seq!
macro to repeat a fragment of source code and substitute into each repetition a sequential numeric counter.use seq_macro::seq;
fn main() {
let tuple = (1000, 100, 10);
let mut sum = 0;
// Expands to:
//
// sum += tuple.0;
// sum += tuple.1;
// sum += tuple.2;
seq!(N in 0..=2 {
sum += tuple.N;
});
assert_eq!(sum, 1110);
}
Написано, конечно же, Толяном.
❤8🤡1😐1
Самая необходимая #prog-рамма на свете — uwuify (#amazingopensource?)
⬇️
Пропускная способность считается в гигабайтах в секунду — отличное производительное решение, готовое для прода.
Hey, I think I really love you. Do you want a headpat?
⬇️
hey, (ꈍᴗꈍ) i think i weawwy wuv you. ^•ﻌ•^ do y-you want a headpat?
Пропускная способность считается в гигабайтах в секунду — отличное производительное решение, готовое для прода.
❤15💩5🌚2😐1
— Ну что, зарезолвил таску?
— Да, код работает, как часы.
— А должен работать по ТЗ!
— Да, код работает, как часы.
— А должен работать по ТЗ!
🌚19👍1😐1
#prog #typescript
В Microsoft решили из-за проблем с производительностью переписать компилятор Typescript с Typescript на... #Go. Выбор языка аргументируют сочетанием контроля над раскладкой структур в памяти вкупе со сборщиком мусора и лёгкостью портирования уже имеющегося кода. На мой взгляд, очень странный выбор.
Производительность, впрочем, действительно улучшилась — прототип уже в состоянии компилировать реальные проекты на порядок быстрее.
В Microsoft решили из-за проблем с производительностью переписать компилятор Typescript с Typescript на... #Go. Выбор языка аргументируют сочетанием контроля над раскладкой структур в памяти вкупе со сборщиком мусора и лёгкостью портирования уже имеющегося кода. На мой взгляд, очень странный выбор.
Производительность, впрочем, действительно улучшилась — прототип уже в состоянии компилировать реальные проекты на порядок быстрее.
Microsoft News
A 10x Faster TypeScript
Embarking on a native port of the existing TypeScript compiler and toolset to achieve a 10x performance speed-up.
😁17👍15❤🔥3🤡2🤔1
Я опять умудрился пропустить годовщину своего блога — а она, между прочим, была 5 декабря. Ещё и дата довольно круглая — Блог*у 5 лет исполнилось
🎉31👍2🤯2🤡2🌚1