Se você fosse escrever um mecanismo de jogo de xadrez, que paradigma de programação você usaria (OOP, procedural etc.) e por que você o escolheria? Por mecanismo de xadrez, quero dizer a parte de um programa que avalia a placa atual e decide a próxima jogada do computador.
Estou perguntando, porque achei que seria divertido escrever um mecanismo de xadrez. Ocorreu-me que eu poderia usá-lo como um projeto para aprender programação funcional. Ocorreu-me então que alguns problemas não são adequados ao paradigma funcional. Ocorreu-me então que isso poderia ser uma boa discussão.