Size: a a a

2020 April 16

ДБ

Дмитрий Беляев... in rust_offtopic
polunin.ai
Сто это за язые
Microsoft Pascal
источник

ch

central hardware in rust_offtopic
Дмитрий Беляев
слышали, что майкрософт свой паскаль сделали? уже в VS есть
кому он нужен
источник

ДБ

Дмитрий Беляев... in rust_offtopic
central hardware
кому он нужен
ну хз, просто студия обновилась и вот вылезло, ну я и решил попробовать чу это, вот такое накатал
источник

ДБ

Дмитрий Беляев... in rust_offtopic
на .NET core работает и под все платформы
источник

DF

Dollar Føølish in rust_offtopic
По ассемблеру я не специалист , но в первом примере очевидна сквозная зависимость по данным еах. Хз сработает ли ренейминг. Плюс во втором память читается линейно и меньше переходов джмп
источник

С

Слава in rust_offtopic
источник

С

Слава in rust_offtopic
источник

AK

Alexander Krivitskiy in rust_offtopic
Doge Shibu
Так, знатоки, какой код вы считаете лучше. В обоих случаях сравниваются структуры  вида: { u64, i64, { i64, i64 } }
Воще похер, но если придраться, то первый скрин вернет False при первом несовпадении чисел, а второй если первые два совпали, а 3е нет - всегда сравнит 4е. Т.е. первый сэкономит пару обращений к памяти если объекты не равны.... будет не 8 а 6... Что у вас там за железо, что ты такими оптимизациями упарываешься?
источник

DS

Doge Shibu in rust_offtopic
Alexander Krivitskiy
Воще похер, но если придраться, то первый скрин вернет False при первом несовпадении чисел, а второй если первые два совпали, а 3е нет - всегда сравнит 4е. Т.е. первый сэкономит пару обращений к памяти если объекты не равны.... будет не 8 а 6... Что у вас там за железо, что ты такими оптимизациями упарываешься?
Это не вопрос железа, это вопрос того насколько моя хитрая тайплевел магия мешает или не мешает оптимизациям.
источник

AK

Alexander Krivitskiy in rust_offtopic
Doge Shibu
Это не вопрос железа, это вопрос того насколько моя хитрая тайплевел магия мешает или не мешает оптимизациям.
Да на такую микруху пофиг должно быть
источник

С

Слава in rust_offtopic
Doge Shibu
Так, знатоки, какой код вы считаете лучше. В обоих случаях сравниваются структуры  вида: { u64, i64, { i64, i64 } }
Запустить и тестировать скорость. Это непредсказуемо.
источник

DS

Doge Shibu in rust_offtopic
Но я уже понял как заставить её не мешать оптимизациям и генерить вообще такой же код как дефолтный дерайвинг
источник

G

Gymmasssorla in rust_offtopic
А можно в Rust с помощью процедурного макроса получить определение типа переменной?
источник

G

Gymmasssorla in rust_offtopic
Мне это нужно для генерации реализации Enum -> Coprod на лету
источник

AK

Alexander Krivitskiy in rust_offtopic
Doge Shibu
Но я уже понял как заставить её не мешать оптимизациям и генерить вообще такой же код как дефолтный дерайвинг
Во втором кейсе последняя пара всегда целиком сравнивается. Переписовай обратно, не транжырь такты процессора!
источник

DS

Doge Shibu in rust_offtopic
Alexander Krivitskiy
Во втором кейсе последняя пара всегда целиком сравнивается. Переписовай обратно, не транжырь такты процессора!
Так всё, я же уже сказал, что понял как добиться одинакового кода с тем вариантом, где ранние выходы
источник

AK

Alexander Krivitskiy in rust_offtopic
Doge Shibu
Так всё, я же уже сказал, что понял как добиться одинакового кода с тем вариантом, где ранние выходы
А... процессор будет счастлив) Но я бы не особо парился по этому поводу
источник

DS

Doge Shibu in rust_offtopic
Alexander Krivitskiy
А... процессор будет счастлив) Но я бы не особо парился по этому поводу
Так это принципиальный вопрос
источник

DS

Doge Shibu in rust_offtopic
Не то, чтобы тут мне важна была производительность
источник

DS

Doge Shibu in rust_offtopic
Но хотелось бы получать одинаковый с дефолтным или прок макро дерайвингом код
источник