I've used the return of = in c++ a lot and always thought it was a great feature and how = should always be. The ++ and -- operators also return their result in place and so do +, -, /, *, and % at least in c++.  I don't know why people got so worked up over it still, I feel that many languages have sort of weird choices and that you just memorize them and move on to use them in the future. Also, I'm glad you mentioned the multiple initialization feature because the returning of the value by = is what normally makes that possible in other languages while python implemented it for only that specific case which people were happy with.