Em resumo, estou tendo mais contato com a linguagem Scala e ouvi, pela primeira vez, sobre tail call optimization. Fiquei bem surpresa, pois achei a ideia muito interessante e não me recordo de ter tido contato com isso em nenhum momento no curso de CIC. Achei que se encaixa bastante no escopo da disciplina de MLP e, como, por enquanto, não sou tua aluna e gostei muito da tua abordagem na disciplina - de uma forma mais prática e com tecnologias atualizadas, pensei que talvez essa técnica pudesse ser mostrada nas aulas em que vemos recursão. Obviamente, é só uma sugestão inocente.
Sugestão de ex-aluna da disciplina.
Mais sobre tail call na Wikipedia para evitar exceções de stack overflow.