Еще недавно, там где я работаю, это зависело от языка и даже фреймворка (в случае наличия). Позавчера мне просто надоело видеть 2 разных варианта в пределах одного экрана, и теперь у нас везде применяется вариант с переносом.
Вариант с переносом выбран потому, что визуальная структурность и читабельность важнее количества строк кода.
P. S. За вариант без переноса в pascal-подобных языках просто убивать хочется:
var i : integer;
function rock(hard: boolean); begin
for i := 1 to 10 do begin
//do something
end;
end;