Size: a a a

Rust — русскоговорящее сообществo

2020 November 27

p

polunin.ai in Rust — русскоговорящее сообществo
transmute это особая функция которая проверяется отдельно
источник

A

Aragaer in Rust — русскоговорящее сообществo
так вот если владение передается, то и копирования никакого не происходит
источник

A

Aragaer in Rust — русскоговорящее сообществo
ровно те же байты на ровно том же месте теперь просто интерпретируются как другой тип
источник

p

polunin.ai in Rust — русскоговорящее сообществo
ну и да, сомневаюсь что id функцию llvm не соптимизирует. это уже багом будет.
источник

H

Hirrolot in Rust — русскоговорящее сообществo
источник

r

red75prime in Rust — русскоговорящее сообществo
Mikail Bagishov
Да, но при этом аргумент в него мувается, то есть memcpy-ится
memcpy при move - это деталь реализации. fn(T) -> T может использовать и caller-allocated значение на стеке.
источник

MB

Mikail Bagishov in Rust — русскоговорящее сообществo
Ну так весь тред про деталь реализации под названием "производительность"
источник

ΑZ

Αλεχ Zhukovsky in Rust — русскоговорящее сообществo
https://doc.rust-lang.org/std/iter/trait.Sum.html

А кто скажет почему есть целый трейт sum() а не просто fold над mempty + mconcat ?
источник

DS

Doge Shibu in Rust — русскоговорящее сообществo
Αλεχ Zhukovsky
https://doc.rust-lang.org/std/iter/trait.Sum.html

А кто скажет почему есть целый трейт sum() а не просто fold над mempty + mconcat ?
Могу предположить, что ради потенциальных оптимизированных реализаций.
источник

ΑZ

Αλεχ Zhukovsky in Rust — русскоговорящее сообществo
Doge Shibu
Могу предположить, что ради потенциальных оптимизированных реализаций.
1. которые можно было бы победить специализацией (для кортима она всегда была)
2. которые все равно все выглядят так: https://doc.rust-lang.org/src/core/iter/traits/accum.rs.html#84-88
источник

DS

Doge Shibu in Rust — русскоговорящее сообществo
Αλεχ Zhukovsky
1. которые можно было бы победить специализацией (для кортима она всегда была)
2. которые все равно все выглядят так: https://doc.rust-lang.org/src/core/iter/traits/accum.rs.html#84-88
1. Так трейты нужны не только для кор тимы.
2. Ну для таких типов особо ничего иного не приудмаешь.

Ну и ещё одна теория - если хочется иметь сумму, но не иметь перегрузки оператора через Add, хотя это редкий кейс.
источник

DS

Doge Shibu in Rust — русскоговорящее сообществo
Посмотрел оригинальный PR со стабилизацией, там мотивации с ходу не нашел
источник

ΑZ

Αλεχ Zhukovsky in Rust — русскоговорящее сообществo
Doge Shibu
1. Так трейты нужны не только для кор тимы.
2. Ну для таких типов особо ничего иного не приудмаешь.

Ну и ещё одна теория - если хочется иметь сумму, но не иметь перегрузки оператора через Add, хотя это редкий кейс.
1.1. для редких типов можно было бы сделать и кастомный метод
1.2 можно было бы хотя бы бланкет реализацию сделать
2.  а для каких придумаешь?)

Ну то ест ьможно из пальца высосать наверное примеры, но ИМХО ваще вот необосоновано такое
источник

p

polunin.ai in Rust — русскоговорящее сообществo
https://doc.rust-lang.org/src/core/iter/traits/accum.rs.html#113 эээ а почему не сделать trait Sum<T> where T: Add<T> + Default ?
источник

p

polunin.ai in Rust — русскоговорящее сообществo
не было бы макросов, плюс можно для своих типов писать
источник

p

polunin.ai in Rust — русскоговорящее сообществo
ну точнее impl Sum for T where T: Add<T> + Default
источник

AD

Andrew Demonov in Rust — русскоговорящее сообществo
polunin.ai
@hirrolot я думаю что экзамплы нужно обновлять только перед непосредственно релизом. то есть до релиза оставлять в деве старые экзамплы с мастера.
Неа, любая законченная фича должна быть консистентной для всего репозитория.

Если ты форкаешь дев для написания новых фич, то он должен быть полностью рабочим. Даже если релизы только по мастеру. Это всем известная схема под названием git-flow если что
источник

С

Сергей in Rust — русскоговорящее сообществo
Я сначала прочитал "фоткаешь дев для написания новых фич" и подумал, что это интересное занятие.
источник

AL

Andrey @ozkriff Lesn... in Rust — русскоговорящее сообществo
https://twitter.com/rustlang/status/1332342061757042691 о, яблочникам теперь можно крабоугодно хайповать изкоробки
источник

A

Anokhin in Rust — русскоговорящее сообществo
еще бы в ios проекты можно было бы легко собирать библиотеки)
источник