Trace Analysis for Predicting the Effectiveness of Partial Evaluation

  • Germán Vidal
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5366)

Abstract

The main goal of partial evaluation [1] is program specialization. Essentially, given a program and part of its input data|the so called static data|a partial evaluator returns a new, residual program which is specialized for the given data. An appropriate residual program for executing the remaining computations|those that depend on the so called dynamic data|is thus the output of the partial evaluator. Despite the fact that the main goal of partial evaluation is improving program efficiency (i.e., producing faster programs), there are very few approaches devoted to formally analyze the effects of partial evaluation, either a priori (prediction) or a posteriori. Recent approaches (e.g., [2,3]) have considered experimental frameworks for estimating the best division (roughly speaking, a classification of program parameters into static or dynamic), so that the optimal choice is followed when specializing the source program.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Jones, N.D., Gomard, C.K., Sestoft, P.: Partial Evaluation and Automatic Program Generation. Prentice-Hall, Englewood Cliffs (1993)MATHGoogle Scholar
  2. 2.
    Craig, S.-J., Leuschel, M.: Self-tuning resource aware specialisation for Prolog. In: Barahona, P., Felty, A.P. (eds.) PPDP, pp. 23–34. ACM, New York (2005)Google Scholar
  3. 3.
    Ochoa, C., Puebla, G.: Poly-controlled partial evaluation in practice. In: Ramalingam, G., Visser, E. (eds.) PEPM, pp. 164–173. ACM, New York (2007)CrossRefGoogle Scholar
  4. 4.
    Vidal, G.: Predicting the Speedup of Partial Evaluation. Technical report, DSIC, UPV (2008), http://www.dsic.upv.es/~gvidal/german/papers.html
  5. 5.
    Mohri, M., Nederhof, M.-J.: Regular Approximation of Context-Free Grammars through Transformation, ch. 9, pp. 153–163. Kluwer Academic Publishers, The Netherlands (2001)MATHGoogle Scholar
  6. 6.
    Gallagher, J.P., Lafave, L.: Regular approximation of computation paths in logic and functional languages. In: Danvy, O., Glück, R., Thiemann, P. (eds.) Dagstuhl Seminar 1996. LNCS, vol. 1110, pp. 115–136. Springer, Heidelberg (1996)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Germán Vidal
    • 1
  1. 1.Technical University of ValenciaSpain

Personalised recommendations