Skip to main content

Strictness Analysis in 4D

  • Conference paper
Book cover Functional Programming, Glasgow 1990

Part of the book series: Workshops in Computing ((WORKSHOPS COMP.))

Abstract

Strictness analysis techniques can be classified along four different dimensions: first-order vs. higher-order, flat vs. non-flat, low fidelity vs. high fidelity, and forward vs. backward. Plotting a table of the positions of known techniques within this space reveals that certain regions are densely occupied while others are empty. In particular, techniques for high-fidelity forward and low-fidelity backward analysis are well known, while those for low-fidelity forward and high-fidelity backward analysis are lacking. This paper fills in the gaps: the low-fidelity forward methods provide faster analyses than the high-fidelity forward methods, at the cost of accuracy, while the high-fidelity backward methods provide more information than the low-fidelity backward methods, at the cost of time.

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.

References

  1. Abramsky, S. “Strictness analysis and polymorphic invariance.” In Proceedings of the Workshop on Programs a Data Objects (Copenhagen). H. Ganzinger and N. Jones, eds. LNCS 217. Springer-Verlag, Berlin, 1985.

    Google Scholar 

  2. Abramsky, S. and Hankin, C. (eds.). Abstract Interpretation of Declarative Languages. Ellis-Horwood, 1987.

    Google Scholar 

  3. Abramsky, S. and Hankin, C. “An introduction to abstract interpretation.” Chapter 1 of [AH87b]

    Google Scholar 

  4. Burn, G.L. “A relationship between abstract interpretation and projection analysis.” POPL (San Francisco, January, 1990).

    Google Scholar 

  5. Burn, G., Hankin, C., and Abramsky, S. “The theory of strictness analysis for higher-order functions.” In Proceedings of the Workshop on Programs a Data Objects (Copenhagen). H. Ganzinger and N. Jones, eds. LNCS 217. Springer-Verlag, Berlin, 1985

    Google Scholar 

  6. Clack, C. and Peyton Jones, S. “Strictness analysis—A practical ap-proach.” In Proceedings of Functional Programming Languages and Computer Architecture (Nancy, France). J.-P. Jounannaud, ed., LNCS 201. Springer-Verlag, Berlin, 1985.

    Google Scholar 

  7. Davis, K. “Trading accuracy for efficiency in forwards strictness analysis.” Unpublished report, 1989.

    Google Scholar 

  8. Davis, K. and Wadler, P. “Strictness analysis: Proved and improved.” In Functional Programming: Proceedings of the 1989 Glasgow Workshop 21–18 August 1989 Fraserburgh Scotland. K. Davis and J. Hughes, eds. Springer Workshops in Computing. Springer-Verlag, 1990.

    Google Scholar 

  9. “Strictness detection in non-flat domains.” Proceedings of the Workshop on Programs a Data Objects (Copenhagen). H. Ganzinger and N. Jones, eds. LNCS 217. Springer-Verlag, Berlin, 1985

    Google Scholar 

  10. Hughes, R.J.M. Backwards Analysis of Functional Programs. Departmental Research Report CSC/87/R3, Department of Computing Science, University of Glasgow, 1987.

    Google Scholar 

  11. Hughes, R.J.M. “Abstract Interpretation of First-Order Polymorphic Functions.” Proceedings of the 1988 Glasgow Workshop on Functional Programming. August 2–5, 1988, R.othesay, Isle of Bute, Scotland. Department of Computing Science, University of Glasgow, Glasgow, Scotland.

    Google Scholar 

  12. Hughes, R.J.M. “Projections for polymorphic strictness analysis.” In Category Theory and Computer Science (Manchester). D.H. Pitt, D.E. Rydeheard, P. Dybjer, A.M. Pitts, A. Poigne, eds. LNCS 389. Springer Verlag, Berlin, 1989.

    Google Scholar 

  13. Mycroft, A. Abstract Interpretation and Optimising Transformations for Applicative Programs. Ph.D. thesis, University of Edinburgh, 1981.

    Google Scholar 

  14. Stoy, Joseph E. Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory. The MIT Press, Cambridge, Massachusetts, 1977.

    Google Scholar 

  15. Wadler, P. “Strictness analysis on non-flat domains by abstract interpretation over finite domains.” Chapter 12 of [AH87].

    Google Scholar 

  16. Wadler, P., and Hughes, J. Projections for Strictness Analysis. Report 35, Programming Methodology Group, Department of Computer Sciences, Chalmers University of Technology and University of Göteborg, Göteborg, Sweden, 1987.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Simon L. Peyton Jones Graham Hutton Carsten Kehler Holst

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Davis, K., Wadler, P. (1991). Strictness Analysis in 4D. In: Jones, S.L.P., Hutton, G., Holst, C.K. (eds) Functional Programming, Glasgow 1990. Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3810-5_3

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-3810-5_3

  • Publisher Name: Springer, London

  • Print ISBN: 978-3-540-19667-9

  • Online ISBN: 978-1-4471-3810-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics