Так-то if+goto закрывают все потребности. Тут вопрос в читаемости
кода. И в балансе между наличием достаточного кол-ва средств,
улучшающих читаемость кода, и раздуванием языка. Понятно, что это
вопрос личного вкуса и опыта, поэтому единого мнения быть не может.