C++ - это язык программирования, в котором существует несколько парадигм. Они позволяют расширить функционал языка. Так, например, в нем существует метапрограммирование шаблонов. Вероятно, никто не ожидал, что оно позволит стать языку Тьюринг-полным подъязыком, способным исполняться во время компиляции.