Skip to main content

Binding-Time Analysis by Constraint Solving

A Modular and Higher-Order Approach for Mercury

  • Conference paper
  • First Online:
Logic for Programming and Automated Reasoning (LPAR 2000)

Part of the book series: Lecture Notes in Artificial Intelligence ((LNAI,volume 1955))

Abstract

In this paper we present a binding-time analysis for the logic programming language Mercury. Binding-time analysis is a key analysis needed to perform off-line program specialisation. Our analysis deals with the higher-order aspects of Mercury, and is formulated by means of constraint normalisation. This allows (at least part of) the analysis to be performed on a modular basis.

supported by the IWT, Belgium.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Rerences

  1. A. Bondorf and J. Jørgensen. Efficient analyses for ralistic off-line partial evaluation. Journal of Functional Programming, 3(3):315–346, July 93. 400, 400

    Article  Google Scholar 

  2. Maurice Bruynooghe, Michael Leuschel, and Kostis Sagonas. A polyvariant binding-time analysis for off-line partial deduction. In C. Hankin, editor, Programming Languages and Systems, Proc. of ESOP’98, part of ETAPS’98, pages 27–41, Lisbon, Portugal, 1998. Springer-Verlag. LNCS 1381. 400

    Google Scholar 

  3. F. Bueno, M. de la Banda, M. Hermenegildo, K. Marriott, G. Puebla, and P. Stuckey. A model for inter-module analysis and optimizing compilation. In Preproceedings of LOPSTR 2000, 2000. 407, 414

    Google Scholar 

  4. Tyson Dowd, Zoltan Somogyi, Fergus Henderson, Thomas Conway, and David Jeffery. Run time type information in Mercury. In Proceedings of the International Conference on the Principles and Practice of Declarative Programming, volume 1702 of Lecture Notes in Computer Science, pages 224–243. Springer-Verlag, 1999. 399

    Google Scholar 

  5. D. Dussart, F. Henglein, and C. Mossin. Polymorphic recursion and subtype qualifications: Polymorphic binding-time analysis in polynomial time. In A. Mycroft, editor, International Static Analysis Symposium, Glasgow, Scotland, September 1995 400, 400

    Google Scholar 

  6. J. Gallagher. Specialisation of logic programs: A tutorial. In Proceedings PEPM’93, ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, pages 88–98, Copenhagen, June 1993. ACM Press. 400

    Google Scholar 

  7. F. Henglein and C. Mossin. Polymorphic binding-time analysis. Lecture Notes in Computer Science, 788, 1994. 400, 400

    Google Scholar 

  8. N. D. Jones, C. K. Gomard, and P. Sestoft. Partial Evaluation and Automatic Program Generation. Prentice Hall, 1993. 400, 406

    Google Scholar 

  9. J. Jørgensen and M. Leuschel. Efficiently generating efficient generating extensions in Prolog. In O. Danvy, R. Glück, and P. Thiemann, editors, Proceedings Dagstuhl Seminar on Partial Evaluation, pages 238–262, Schloss Dagstuhl, Germany, 1996. Springer-Verlag, LNCS 1110. 400

    Google Scholar 

  10. J. Launchbury. Dependent sums express separation of binding times. In K. Davis and J. Hughes, editors, Functional Programming, pages 238–253. Springer-Verlag, 1989. 400

    Google Scholar 

  11. M. Leuschel, B. Martens, and D. De Schreye. Controlling generalisation and polyvariance in partial deduction of normal logic programs. ACM Transactions on Programming Languages and Systems, 20(1), 1998. 400

    Google Scholar 

  12. T. Mogensen and A. Bondorf. Logimix: A self-applicable partial evaluator for Prolog. In K.-K. Lau and T. Clement, editors, Proceedings LOPSTR’92, pages 214–227. Springer-Verlag, Workshops in Computing Series, 1993. 400

    Google Scholar 

  13. Jens Palsberg. Closure analysis in constraint form. ACM Transactions on Programming Languages and Systems, 17(1):47–62, January 1995. 400

    Article  Google Scholar 

  14. G. Puebla and M. Hermenegildo. Some issues in analysis and specialization of modular Ciao-Prolog programs. Las Cruces, 1999. Proceedings of the Workshop on Optimization and Implementation of Declarative Languages. In Electronic Notes in Theoretical Computer Science, Volume 30 Issue No.2, Elsevier Science. 414

    Google Scholar 

  15. Zoltan Somogyi, Fergus Henderson, and Thomas Conway. The execution algorithm of Mercury, an efficient purely declarative logic programming language. Journal of Logic Programming, 29(1–3):17–64, October-November 1996. 403, 404

    Article  MATH  Google Scholar 

  16. W. Vanhoof and M. Bruynooghe. Binding-time analysis for Mercury. In D. De Schreye, editor, 16th International Conference on Logic Programming, pages 500–514. MIT Press, 1999. 400, 400, 401, 403, 414

    Google Scholar 

  17. W. Vanhoof and M. Bruynooghe. Towards modular binding-time analysis for first-order Mercury. Las Cruces, 1999. Proceedings of the Workshop on Optimization and Implementation of Declarative Languages. In Electronic Notes in Theoretical Computer Science, Volume 30 Issue No.2, Elsevier Science. 415

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Vanhoof, W. (2000). Binding-Time Analysis by Constraint Solving. In: Parigot, M., Voronkov, A. (eds) Logic for Programming and Automated Reasoning. LPAR 2000. Lecture Notes in Artificial Intelligence(), vol 1955. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44404-1_25

Download citation

  • DOI: https://doi.org/10.1007/3-540-44404-1_25

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41285-4

  • Online ISBN: 978-3-540-44404-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics