Définition
Technique de programmation dans laquelle les programmes source représentent une fonction des données initiales.
Les langages destinés à la programmation fonctionnelles se distinguent en général des langages traditionnels par l'absence de structure itérative (boucle) comme les classiques FOR
ou WHILE
, et par le fait que les variables ne varient plus après leur affectation initiale. La récursion remplace les boucles, et le fait que l'itération disparaisse supprime la majorité des cas où la modification de valeur de variables est nécessaire.
Il existe deux grandes classes de langages fonctionnels:
- les langages spécialisés, comme CAML, Haskell, ML, Miranda, Scheme, très populaires dans le monde de la recherche informatique et peu répandus ailleurs
- les tableurs : hormis la partie langage de script éventuelle, une feuille de calcul implémente un programme fonctionnel: chaque cellule s'exprime en fonction de valeurs initialisées une seule fois (valeurs brutes) ou calculées en fonction d'autres valeurs (formules), sans itération ou modification après l'affectation initiale.
Voir XSLT.