Évaluation stricte

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

L'évaluation stricte est la stratégie d'évaluation la plus commune parmi les langages de programmation.

Description[modifier | modifier le code]

Dans ce mode d'évaluation, l'expression est évaluée dès qu'elle peut être liée à une variable. On oppose généralement à ce concept celui d'évaluation paresseuse, où les expressions sont évaluées lorsqu'on en fait explicitement la demande (notamment lorsque l'on cherche à afficher un résultat). L'évaluation stricte est le mode d'évaluation quasi-exclusif des langages impératifs où l'ordre d'exécution des expressions correspond à celui de leurs définitions dans les sources.

Un avantage de l'évaluation stricte est qu'elle élimine la nécessité de suivre et d'ordonner l'évaluation des expressions. Elle laisse aussi au programmeur la responsabilité d'en définir l'ordre d'exécution. Ce contrôle sur l'ordre d'exécution est d'autant plus nécessaire que dans les langages où les effets de bord sont possibles, l'ordre d'évaluation peut avoir un impact sur le résultat obtenu par une expression.

Un désavantage de l'évaluation stricte est qu'elle force l'évaluation des expressions qui ne sont pas nécessaires à l'exécution ou qu'elle peut retarder l'évaluation d'expressions qui sont immédiatement nécessaires. Elle laisse aussi au développeur le soin d'organiser de manière optimal l'ordre d'exécution.

On peut cependant noter que la plupart des compilateurs modernes sont capables d'optimiser l'ordre d'exécution des expressions afin de maximiser l'utilisation des ressources processeurs et d'éliminer des expressions inutiles.


Voir aussi[modifier | modifier le code]

Sources et Liens externes[modifier | modifier le code]

Notes et références[modifier | modifier le code]