Olá jonaspy
, eu entendi sua pergunta...
Olha, dizer que é certo ou errado nesse caso pode depender um pouco... Mas falando de dia a dia, normalmente, quando vc estiver trabalhando em uma aplicação web por exemplo, utilizando um framework por exemplo, vc vai separar seu código em pequenas funções ou arquivos... pode ser que esse framework, no final das contas, por baixo dos panos, esteja executando todo aquele código em uma função como no seu exemplo acima... mas você utilizando o framework, vai estar criando arquivos separados, importando eles em algum lugar e sim... pode ser que tudo que vc criou no final das contas rode em uma função...
Esse seu exemplo acima, n está errado por exemplo.... vc criou uma função com diversas outras funções dentro dela ( n estou falando do que o código em si faz, mas respondendo especificamente sua pergunta )... isso q vc faz n é errado!