Я думаю, что есть разные причины, но все они сводятся к тому, что первая просто менее читаема и более подвержена ошибкам, потому что одна строка делает больше, чем одну вещь.
И все это без реальной выгоды, и не говорите мне, что вы нашли две строки сэкономленного пространства, это реальная выгода.
Это похоже на то, что происходит, когда у вас есть
if ((foo = some_function()) == 0) {
//do something
}
Конечно, этот пример намного хуже вашего.