Почему далеко не в каждой программе есть обработичик паник? Потому что локальные догматы диктуют, что паники - это средство для как правило фатальных ошибок.
не поэтому. А потому что почти все программы хайлевел скриптуха. И ЦА фанатична. Т.е. она готова страдать так, как не готов страдать обычный пользователь обычного языка.
Поэтому и в С++ и в какой-нибудь жаве и даже в js - есть локальные секты, которые предписывают не использовать исключения. И во многом это даже оправдано, иногда. Это ничего не значит, пока они есть. Всё равно логика будет смешанной и кто-то будет ловить, а кто-то нет