publication . Article . Conference object . 2005

Abstract specialization and its applications

Germán Puebla; Manuel V. Hermenegildo;
Open Access
  • Published: 14 Nov 2005 Journal: ACM SIGPLAN Notices, volume 38, pages 29-43 (issn: 0362-1340, eissn: 1558-1160, Copyright policy)
  • Publisher: Association for Computing Machinery (ACM)
  • Country: Spain
Abstract
The aim of program specialization is to optimize programs by exploiting certain knowledge about the context in which the program will execute. There exist many program manipulation techniques which allow specializing the program in different ways. Among them, one of the best known techniques is partial evaluation , often referred to simply as program specialization, which optimizes programs by specializing them for (partially) known input data. In this work we describe abstract specialization , a technique whose main features are: (1) specialization is performed with respect to "abstract" values rather than "concrete" ones, and (2) abstract interpretation rathe...
Subjects
free text keywords: Software, Computer Graphics and Computer-Aided Design, Informática, Concurrency, Preprocessor, Abstract interpretation, Computer science, Static analysis, Partial evaluation, Dynamic priority scheduling, Programming language, computer.software_genre, computer, Logic programming, Program optimization
51 references, page 1 of 4

[1] M. Bruynooghe. A Practical Framework for the Abstract Interpretation of Logic Programs. Journal of Logic Programming, 10:91-124, 1991. [OpenAIRE]

[2] F. Bueno, D. Cabeza, M. Hermenegildo, and G. Puebla. Global Analysis of Standard Prolog Programs. In European Symposium on Programming, number 1058 in LNCS, pages 108-124, Sweden, April 1996. Springer-Verlag.

[3] R. M. Burstall and J. Darlington. A transformation system for developing recursive programs. Journal of the ACM, 24(l):44-67, 1977.

[4] C. Consel and O. Danvy. Tutorial Notes on Partial Evaluation. In ACM SIGPLAN-SIGACT Symposium on Principies of Programming Languages POPL'93, pages 493-501, 1993. ACM.

[5] C. Consel and S. Koo. Parameterized partial deduction. ACM Transactions on Programming Languages and Systems, 15(3):463-493, July 1993.

[6] P. Cousot and R. Cousot. Abstract Interpretation: a Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Fourth ACM Symposium on Principies of Programming Languages, pages 238-252, 1977.

[7] P. Cousot and R. Cousot. Systematic Design of Program Transformation Frameworks by Abstract Interpretation. In POPL'02: 29ST ACM SIGPLAN-SIGACT Symposium on Principies of Programming Languages, pages 178-190, 2002. ACM. [OpenAIRE]

[8] M. G. de la Banda, K. Marriott, and P. Stuckey. Efñcient Analysis of Constraint Logic Programs with Dynamic Scheduling. In International Logic Programming Symposium, 1995. MITPress.

[9] J. Gallagher. Static Analysis for Logic Program Specialization. In Workshop on Static Analysis WSA '92, pages 285-294, 1992.

[10] J. Gallagher. Tutorial on specialisation of logic programs. In Proceedings of ACM PEPM'93, pages 88-98. ACM Press, 1993.

[11] J. Gallagher and M. Bruynooghe. The derivation of an algorithm for program specialisation. New Generation Computing, 9(1991):305-333, 1991.

[12] J. Gallagher, M. Codish, and E. Shapiro. Specialisation of Prolog and FCP Programs Using Abstract Interpretation. New Generation Computing, 6(2-3):159-186, 1988.

[13] J. Gallagher and D. de Waal. Fast and precise regular approximations of logic programs. In P. Van Hentenryck, editor, International Conference on Logic Programming. MIT Press, 1994.

[14] J. Gallagher and L. Lafave. Regular approximation of computation paths in logic and functional languages. In Partial Evaluation, volume 1110, pages 115 - 136. Springer Verlag LNCS, 1996.

[15] J. Gallagher and J. Peralta. Using regular approximations for generalisation during partial evaluation. In Proc. ACM PEPM, pages 44-51. ACM Press, 2000.

51 references, page 1 of 4
Any information missing or wrong?Report an Issue