Мерль
я серьёзно
Loo
պլհկ
http://little-dude.github.io/
Loo
топовый бложик
Loo
по теме и без воды
VCL
Привет) Решил всё-таки взяться за раст․ Накинете интересных опенсорсный проектов в которые можно поконтрибутить?
Loo
Loo
открываешь любую ссылку с этого дайджеста
Маjко
rustc, servo)
У обоих есть задачи для новичков, с менторством
Loo
и там в конце есть раздел
Loo
Call for Participation
VCL
VCL
И я как понимаю лучше читать сразу Second Edition?
Loo
лучше обе прочесть
VCL
Начиная с первой?
Loo
ага
VCL
Хорошо) Спасибо․
VCL
Пока тогда поставлю stable
Loo
не за что
VCL
Вау)
io::stdin()
.read_line(&mut guess)
.expect("Failed to read line");
VCL
Чувствуется, что в расте меня ждёт освобождение от всех костылей
Filipp
от многих
Евгений
И появление новых :)
Filipp
ну всего парочки
VCL
Интересно узнать каких?
Filipp
пока самый большой, с которым я сталкивался это написание оберток для обхождения принципа локальности. Но так если подумать то он вроде и не совсем большой
Filipp
После питона очень страдаю от отсутствия именованных и дефолтных параметров, приходится делать стракты для передачи в функцию
VCL
C++: Программист умный, доверим всё ему
Rust: Программист всё-таки тупой, доверим всё компилятору
Alex
VCL
Например?
В плюсах мне бы например пришлось костылить собственный trim() )
Alex
Сергей
Ну нет же, c++: давайте будем совместимыми с C и не будем слишком усложнять работу авторам компиляторов
Rust: давайте усложним компилятор, чтобы уменьшить вероятность ошибки
Alex
я почему то прочитал как "туплами передаю"
Alex
т.к в питоне как раз туплы популярны
VCL
Anonymous
Oleg
Alex
компилятор тоже ошибается
Alex
не ошибается только тот кто ничего не делает.
Anonymous
компилятор не ошибается, ошибается программист писавший компилятор
Alex
Alex
просто это фиксят
VCL
Alex
Anonymous
херню написал
Oleg
просто это фиксят
Компилятор можно пофиксить, и он ошибаться в данном случае не будет. А программист может не выспаться, и ничто уже его не пофиксит :)
Alex
это не отменяет того факта что компилятор ошибается
Anonymous
у него нету мозга, чтобы ошибаться
VCL
VCL
Единственное, что пока что ксенофобию вызвало, это возможность сделать так
let x = 5;
let x = "Some string";
VCL
Потом не путаешься в типах и назначении биндингов?
Oleg
Можно так и не делать :)
Loo
это затенение называется
Loo
иногда компилятор просит продлить время жизни объекта но ты не хочешь плодить имена пеерменных
Loo
в таком случае это полезно
VCL
Ну да) В тех же плюсах я часто делал x, а потом создавал x_str)
VCL
Как в книге указано в пример
Filipp
x вообще не очень хорошое название переменной имхо
VCL
Это для примера
Filipp
вобщем не вижу проблем с затенением. Можешь какой-нибудь сценарий привести?
Filipp
чем? Мне кажется билдер над структурой выигрывает только когда надо сложную валидацию делать какую-то
Filipp
если надо передать только пару параметров можно заюзать ..Default::default()
Loyd
Ну вот ..Default::default выглядит убого
Filipp
вкусовщина
Filipp
можно написать ..MyParameters.default()
Loyd
+ если планируешь в будущем добавлять ещё параметров, то надо форсить этот Default::default, добавляя приватных полей, что опять убого
Oleg
мне кажется builder pattern - это запах кода. Означающий, что у вас какой-то объект - свалка параметров. Т.е. лучший подход как-то разбить на субконструкторы это
Filipp
Loyd
VCL
RUST_BACKTRACE. Опять избавление от костылей.
Oleg
Loyd
А то он может перечислить все параметры
Loyd
Loyd
Не представляю как ты собрался разбивать реквест