TIOBE Index January 2017. The top 10 languages are Java, C, C++, Python, Visual Basic, Javascript, Perl, Assembly, PHP
Except for Assembly, where the comparison makes no sense, all of these languages have return expression. Yes, there are other languages that use last expression but they are most definitely not common languages and the most common languages use return expression.
It just seems unnecessary. It isn't clear what they got out of it.
Correlation is not causation. Having return expressions does not make or break a language.
Python and JS do have return expressions in the context of lambdas.
I'm not very fond of this pattern in untyped languages (Ruby, Perl) because it can lead to accidental returns, but I'm pretty happy with having it in a typed language.
let lowercased = names.map(name => name.toLowerCase());
This is, strictly speaking, not true. Rust is an "everything[1] is an expression language", and so if you have some sort of block, it will evaluate to its last expression.
But if you want to do an early return, you must write it, or if you don't like the default Rust style, you can write it.
This is consistent with other languages, just not C.
1: not literally everything, but most things.