> Это поколение "программистов" спрашивать не буду.В смысле тебе поколение хипстеров ближе? Я тоже очень не люблю старпёров, но как говаривал Юдковский: если самый тупой человек на свете говорит, что небо голубое, это не значит, что оно зелёное.
Пайп как "или" используется, как минимум со времён C... Хотя не, в BNF ведь | используется, а это вообще середина XX века ещё. Отказываться от этого я не вижу никакого смысла, это уже будет негативизмом, в смысле позицией "назло мамке в лужу сяду".
> Есть ли у вас ассоциация оператора выбора с выбором в словаре? И
> есть ли ассоциация возможности реализации выбора с помощью типа данных словарь?
Нет и нет. Паттерн-матчинг -- это древняя техника, с которой я например ознакомился где-то в 90-х читая учебник по лиспу (примерно 80-го года издания), где в качестве примера программы реализовывался паттерн матчинг для создания чего-то там. Может быть чат-бота по типу Elisa. Паттерн матчинг несводим к ассоциативному массиву, хотя ассоциативный массив иногда можно использовать для более эффективной реализации. Но это проблемы компилятора, будет ли он использовать ассоциативный массив, просто jmp table, последовательность cmp/je, или что. Хороший компилятор лучше меня должен знать, как данный случай на данной платформе сделать быстрее.
Но дело не в скорости, глянь на примеры в тексте статьи, они немного приоткрывают возможности. Возьми тот пример с функцией whereis, и попробуй переписать это без match, и сравни количество затраченных усилий и читаемость результата.
В целом я рад, что паттерн-матчинг стал must have фичой языков. И дело даже не в том, что когда его нет, а он нужен, начинаешь мухой на стекле выёживаться, лишь бы не писать ad hoc реализацию, а в том, что он реально удобен и может превратить безумное нагромождение if/else в несколько уровней вложенности в няшную и понятную структуру кода, которая хорошо отражает программерскую мысль, и легко при этом компилятором преобразуется в эффективный машинный код.