La programmation fonctionnelle est un paradigme qui tente de résoudre les problèmes de calcul par l'évaluation chaînée de fonctions dont la sortie est déterminée par leurs entrées plutôt que par l'état du programme. Dans ce style de programmation, les effets secondaires et les données mutables sont déconseillés et généralement strictement isolés.