2021-12-28

amarao: (Default)
2021-12-28 12:23 pm

Эллипсисы Rust'а

Некоторые вещи настолько глубоко фундаментально правильные, что после того, как один раз попробуешь, дальше становится не понятно, почему у всех остальных не так.

Например, в Rust последнее выражение (без ';') - это возвращемое значение функции.

fn foo() -> i32{
2
}

возвращает 2.

Почему не так же в питоне? Нет ни одной причины, почему последнее значение не может быть возвращемым. Наоборот, модель питона "нет return - возвращем None" звучит очень странно и произвольно.

Ленивое "не печатать return в конце функции" очень трудно изжить, потому что оно очевидно, удобно и кратко.