На самом деле, в любом достаточно развитом языке с накопленным легаси, в большом проекте, ты всегда ппишешь на подмножестве языка. Я знал проекты где в базовом фреймворке были запрещены исключения в Си++, или динамические аллокторы, где политически были запрещены контейнеры STL, и что-либо дальше auto/range-for C++11, знал где были запрещены большая часть boost, где запрещены шаблоны и трюки с метапрограммированием. (не подумайте, что это было единовременно. В разных проектах - разные полиси)
Иногда, для уменьшения энтропии и упрощение командной разработки ты выбираешь подмножество языка на котором говорит твоя команда. Это нормально и так делают