Ну справедливости ради, это не просто синтаксический сахар над if/elif/else. Этот синтаксис сильно упрощает некоторые конструкции и позволяет использовать возможности модуля typing для паттерн-матчинга. Что по идее довольно питонично, ибо duck-typing, все дела.
Мне даже интересно, как это будет работать с typing.Protocol. Наверняка протокол придётcя объявлять c @runtime_checkable со всеми сопутствующими ограничениями.
switch ... case - это норма для языков, а не какой-то там «сахар».
И наконец-то аналог появится в Python'е. А то везде есть, включая Ruby, а в Python'е вместо нормального синтаксиса приходится городить батарею из if/elif.
И наконец-то аналог появится в Python'е. А то везде есть, включая Ruby
Ты так пишешь, будто руби — это не еще более ненужный кусок дерьма по сравнению с питоном. Если питон и дальше будет так «развиваться», то уже очень скоро код с паттерн матчингом, макросами, и аннотациями обобщенных типов по читаемости сравнится с C++, при этом по скорости продолжит быть эдак в 100 раз медленнее без малейших шансов получить универсальное решение проблемы со скоростью (не переписывая язык с нуля).
а в Python'е вместо нормального синтаксиса приходится городить батарею из if/elif
Какая разница, будешь ли ты городить батарею из elif или из case? Минимальная экономия букв не оправдывает добавление нескольких питоноподобных DSL (да-да, их больше одного) в состав интерпретатора.
Гвидо правильно гнал в шею ревнителей свичкейза. Ещё лет пять назад они бы наверняка наворотили в питоне сишкоподобное убожество, а так там сразу появился нормальный паттерн-матчинг.