Compilation de langages paresseux par analyse de stricticité arrière: Utilité et limites

Une technique importante pour la mise en oeuvre des langages fonctionnels paresseux est l' analyse de stricticité. Bien qu'il soit généralement admis que cette forme d'analyse joue un role important dans la réduction des couts associés à la mise en oeuvre de l'évaluation paresseuse, les facteurs influencant la précision des résultats de l'analyse, donc les performances des programmes résultants, sont moins bien connus.

Le présent article introduit une forme d'analyse de stricticité arrière appelée propagation abstraite des demandes et examine certains des facteurs influencant la précision du processus d'analyse résultant, cherchant ainsi à mieux cerner les limites de l'analyse de stricticité.

Un compilateur pour langage paresseux basé sur le modèle de propagation abstraite des demandes est présenté ainsi que diverses expériences réalisées avec ce compilateur. Les résultats obtenus montrent que l'analyse de stricticité permet effectivement d'améliorer les performances de facon significative. Toutefois, les résultats démontrent par ailleurs que l'analyse de stricticité seule ne suffit pas .

Pour obtenir la version postscript

Cliquez ici pour obtenir la version postscript.