An Efficient Staging Algorithm for Binding-Time Analysis

  • Conference paper
Logic Based Program Synthesis and Transformation (LOPSTR 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3018))

Abstract

Binding-Time Analysis (BTA) is one of the compile-time program analyses which is a general framework for program optimization and program generation [1]. The task of BTA is to divide a source program into two parts according to a given binding-time specification [2]. A binding-time specification gives information about availability of data: static data are available at compile-time while dynamic data are available at run time. BTA determines, from a binding-time specification of the input, on which parts computation can take place by propagating information on static data. Partial evaluators specialize the program for the static data by using the information from BTA to generate a more efficient program than the original.

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

Access this chapter

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or Ebook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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 ship** worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

References

  1. Jones, N.D., Gomard, C.K., Sestoft, P.: Partial Evaluation and Automatic Program Generation. Prentice-Hall, Englewood Cliffs (1993)

    MATH  Google Scholar 

  2. Jones, N.D.: An Introduction to Partial Evaluation. ACM Computing Surveys 28, 480–503 (1996)

    Article  Google Scholar 

  3. Consel, C.: Binding Time Analysis for Higher Order Untyped Functional Languages. In: Proceedings of the 1990 ACM conference on LISP and functional programming, pp. 264–272. ACM Press, New York (1990)

    Chapter  Google Scholar 

  4. Henglein, F.: Efficient Type Inference for Higher-Order Binding-Time Analysis. In: Hughes, J. (ed.) FPCA 1991. LNCS, vol. 523, pp. 448–472. Springer, Heidelberg (1991)

    Google Scholar 

  5. Glück, R., Jørgensen, J.: Fast Binding-Time Analysis for Multi-Level Specialization. In: Proceedings of Perspectives of System Informatics, pp. 261–272 (1996)

    Google Scholar 

  6. Sheard, T., Linger, N.: Search-Based Binding Time Analysis using Type-Directed Pruning. In: Proceedings of the ACM SIGPLAN Asian Symposium on Partial Evaluation and Semantics-Based Program Manipulation, Aizu, Japan, pp. 20–31 (2002)

    Google Scholar 

  7. Sasano, I., Hu, Z., Takeichi, M., Ogawa, M.: Make it Practical: A Generic Linear- Time Algorithm for Solving Maximum-Weightsum Problems. In: Proceedings of the Fifth ACM SIGPLAN International Conference on Functional Programming, Montreal, Canada, pp. 137–149 (2000)

    Google Scholar 

  8. Sasano, I., Hu, Z., Takeichi, M.: Generation of Efficient Programs for Solving Maximum Multi-Marking Problems. In: Taha, W. (ed.) SAIG 2001. LNCS, vol. 2196, pp. 72–91. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Murakami, T., Hu, Z., Kakehi, K., Takeichi, M. (2004). An Efficient Staging Algorithm for Binding-Time Analysis. In: Bruynooghe, M. (eds) Logic Based Program Synthesis and Transformation. LOPSTR 2003. Lecture Notes in Computer Science, vol 3018. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-25938-1_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-25938-1_9

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22174-6

  • Online ISBN: 978-3-540-25938-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics

Navigation