С++ объективно переусложнён. А от того, что за 20 лет на шаблонах они там изобрели чёрт-те что и сбоку бантик, SFINAE (понятия не имею, что это) - так в Rust есть процедурные макросы, тоже полные по Тьюрингу. На них и не такое напишут.
Шаблоны крестовые - это отдельная тема, я их не юзаю без достаточной необходимости