Тогда следующий вопрос, а где можно поглядеть версию сортировки слиянием с хвостовой рекурсией? А то я мозг себе сломал пытаясь придумать как это сделать
Ну с CPS хз как сделать хвостовую рекурсию, ибо ты можешь на любом этапе подложить какую угодно функцию внутрь, одну с большим стековым пространством, другую с маленьким.
Компилятор в теории может понять что есть некая функция с макс стековым пространством, выделить под неё место и как-то каждый раз занулять его, но это чёт супер меджик