A lot of languages pointlessly make a distinction between a statement and an expression. I can’t imagine why anyone would want that.
It's one of the things I love the most in Rust, and was previously just seen in functional languages.
Even scripting languages like Python feel clunkier than Rust due to the unnecessary statement/expression distinction.
Not having S-expressions is weird. Not being able to drop my cursor anywhere and with a few keystrokes to expand my selection "grab" a referentially transparent value expression and just relocate it or move it or evaluate in the REPL. What are all these other PLs and programmers even doing?