Size: a a a

2020 March 24

DS

Doge Shibu in rust_offtopic
Плюс это служит для модульности в архитектурном смысле, когда приложение разделено на части, которые не знают друг о друге ничего, кроме данных интерфейсов
источник

p

polunin.ai in rust_offtopic
Doge Shibu
Но у тебя могут быть настройки в этом апи:

использовать_фильтр_1: true,
использовать_фильтр_2: false

И т.п.
Не вижу как конкретно здесь помогут типажи
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
Не вижу как конкретно здесь помогут типажи
fn my_business_logic<F: Filter>(data: Data, filter: Filter)
источник

p

polunin.ai in rust_offtopic
А, ок, понял
источник

DS

Doge Shibu in rust_offtopic
И filter собирается в зависимости от настроек либо как Vec<dyn Filter>, либо как hlist![Filter1, Filter2,...], либо как смесь подобных вариантов
источник

Т8

Т-34 85 in rust_offtopic
если я правильно понял, что ты хочешь сделать, то надо было передавать Rc не по ссылке, а по значению. Ссылка не инкрементирует счётчик, а копирование shared_ptr инкрементирует

std::function<int(void)> f(std::shared_ptr<int> x) {
   return [&]() { return *x; };
}


как-то так. В функцию передаём шаред по ссылке, потому что нет смысла копировать, он почти сразу умёр, а вот захват в лямбду обязательно по значению, ведь ей потребуется эта память

std::function<int(void)> f(const std::shared_ptr<int>& x) {
   return [=]() { return *x; };

}
источник

Т8

Т-34 85 in rust_offtopic
polunin.ai
А на расте пришел и пишешь, без опыта тулинга и т.п.
держи в курсе
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
если ты наговнокодил так что оно не соберется - то компилятор тебя предостерег и правильно сделал
а если соберётся, но результат всё равно не тот, который нужен?
источник

p

polunin.ai in rust_offtopic
Doge Shibu
И filter собирается в зависимости от настроек либо как Vec<dyn Filter>, либо как hlist![Filter1, Filter2,...], либо как смесь подобных вариантов
Норм с Vec<Box<dyn Filter>>? Я сильно страдал с этим, + это подразумевает отсутствие оптимизаций
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
я _не смогу написать_ на плюсах работающую программу
а я на расте не смогу, я заебусь разбираться, что этому компилятору не так. А ему всё не так, даже в тривиальных случаях
источник

p

polunin.ai in rust_offtopic
Т-34 85
а если соберётся, но результат всё равно не тот, который нужен?
Исправляй дебаггером, чо
источник

Т8

Т-34 85 in rust_offtopic
polunin.ai
Исправляй дебаггером, чо
спасибо, так всегда и делаю. Хоть с растом, хоть с крестами, хоть с шарпами
источник

DS

Doge Shibu in rust_offtopic
polunin.ai
Норм с Vec<Box<dyn Filter>>? Я сильно страдал с этим, + это подразумевает отсутствие оптимизаций
Оно у меня используется для тех мест, где производительность не столь важна.
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
язык на котором можно что-то сделать для меня лучше чем тот, на котором сделать нельзя
вот поэтому опытный плюсовик не будет разбираться, что там раст, а на привычном инструменте набросает код
источник

Т8

Т-34 85 in rust_offtopic
polunin.ai
Я выше писал, сделал диф на 1300 строк и получил только 3 логические ошибки
источник

Т8

Т-34 85 in rust_offtopic
вывод по одному случаю - это гениально, я считаю
источник
2020 March 25

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
не поверишь, на расте у меня тоже 0 опыта
ну не ври, а. На плюсах 0 опыта, и ты допустил типичную висячую ссылку. А на расте такой же 0, но ты знал о лайфтаймах и даже смог расписать их?
источник

В

Вафель in rust_offtopic
Doge Shibu
И filter собирается в зависимости от настроек либо как Vec<dyn Filter>, либо как hlist![Filter1, Filter2,...], либо как смесь подобных вариантов
ура hlist
источник

DS

Doge Shibu in rust_offtopic
Вафель
ура hlist
А как ещё, не руками же, в конце концов
источник

а

а это кто in rust_offtopic
Emmanuel Goldstein
А «функциональные» части он наследует от OCaml, а не от Haskell
OCaml и Haskell прямо сильно отличаются? (кроме синтаксиса и чистоты функций)
источник