Начинаем с нуля, пытаемся считать число, пишем
let mut guess = String::new(); io::stdin().read_line(&mut guess) .expect("Failed to read line");
1) Почему банальная функция считывания строки считывает ее в параметр как сайд эффект, вместо того чтобы вернуть как result ok()
?
2) Почему банальное ио лежит в отдельном крейте а не в прелюде?
Ну, типа, почему бы не делать интерфейс няшным в духе
let mut guess = readline().expect("bla-bla");