Programação funcional é um paradigma de programação que consiste em realizar a computação como funções matemáticas, evitando estados ou modificações nos dados: mais destes são criados, em vez de modificar os dados que já existem. A programação funcional possui algumas propriedades importantes:
- Funções podem receber funções como parâmetros e podem ser parâmetros para outras funções
- Dados podem ser criados, mas não podem ser modificados
- Funções podem ser criadas, nomeadas ou até criadas anonimamente