Évaluation paresseuse

méthode d'implémentation en programmation informatique

L’évaluation paresseuse (en anglais : lazy evaluation), appelée aussi appel par nécessité ou évaluation retardée est une technique d'implémentation des programmes récursifs pour laquelle l'évaluation d'un paramètre de fonction ne se fait pas avant que les résultats de cette évaluation ne soient réellement nécessaires. Ces résultats, une fois calculés, sont préservés pour des réutilisations ultérieures.

Dans un langage comme Haskell, l'évaluation est paresseuse par défaut.

Cette technique peut être utilisée à des fins d'optimisation (éviter de calculer un résultat qui pourrait ne pas être utilisé) mais permet aussi des constructions originales, qui seraient impossibles à envisager sans une telle approche, comme la définition d'une suite infinie. En évaluation immédiate, le programme tenterait d'évaluer indéfiniment et ne terminerait jamais. Avec l'évaluation retardée, seuls les termes de la suite effectivement utilisés seront évalués et ce au moment où on en a besoin.

Références

modifier

Bibliographie

modifier

Voir aussi

modifier

Cadre général

modifier

Techniques apparentées

modifier