Pare de Lançar Erros que o Seu Verificador de Tipos Não Vê
Exceções lançadas escondem caminhos de falha do seu sistema de tipos. Veja por que retornos de erro explícitos tornam seu código mais honesto, e como adotá-los sem odiar sua vida.
A assinatura da sua função diz que retorna um . Não retorna. Ela retorna um ou explode. O sistema de tipos simplesmente não sabe sobre o segundo branch. Esta é…