Недавно рассматривал любопытный проект CPAL (Cyber-Physical Action Language):
https://www.designcps.com/Это система разработки и имитационного моделирования для embedded, академический проект (с некоторой практикой), но фактически это развитие платформы от Westingshouse, переданной академическому сообществу. В основе для моделей Си-подобный язык (хотя с непривычки есть некая ломка мозга при виде объявлений как "const uint8: threshold = 30", где используется двоеточие, но порядок указания типов Си-шный (перед идентификатором переменной/константы) вместо привычного Pascal/ML-порядка в случае использования ":"). Как минимум соблюдается MISRA, а в целом платформа когда-то прошла процедуры сертификации по стандартам безопасности. Обращает на себя внимание декларирование переменных, что как раз отмечено выше в теме. Переменные вводятся по месту, как и в Си, но только в начале синтаксической области (внутри {}-блоков).
И чтобы два раза не вставать, дополню. Где-то здесь на форуме рассматривались и прочие языковые вопросы в контексте возможного развития/модификации Оберонов/КП, и в частности насчёт введения композитных операций сравнения вида "a < x < b". В CPAL имеются такие операции, но в отличие от Питон и пр. есть ограничения. Не допустимы:
0 != 1 == 1
0 < 1 == 1
0 >= -1 != 2
Такие операции крайне нежелательны (формируется warning, но фактически введён запрет, его не было изначально и warning выдается из-за совместимости):
0 < 3 > 2
0 >= -1 < 2
2 >= 2 < 4
Т.е. допускаются лишь однородные операции:
0 < 1 < 2
0 <= 0 < 1
3 < 2 <= 1
2 == 2 == 2
3 != 1 != 3
В IT подобное редко встречается (даже в относительно новых языках как, к примеру, Julia, как раз с математическом направлением, не уделяют внимание подобной эргономике и безопасности).