Skip to main content

A note on abstract interpretation of polymorphic functions

  • Conference paper
  • First Online:
Functional Programming Languages and Computer Architecture (FPCA 1991)

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

Abstract

Strictness analysis of monomorphic functional programs by abstract interpretation has been extensively studied. Abramsky's work describes the extension to polymorphic functions. However, if different instances of a polymorphic function are used in a program, we have to re-analyse to compute abstract functions at each instance used. In the first-order case, Hughes showed how to compute the needed abstract functions without re-analysis. In this paper we develop a method of computing safe approximations to abstract functions of higher-order functions. The approximations are computed from abstract functions of simple instances of polymorphic functions. In the first-order case, the method gives exact values.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. S. Abramsky. Strictness Analysis and Polymorphic Invariance. In Programs as Data Objects, LNCS 217, 1985.

    Google Scholar 

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

    Google Scholar 

  3. S. Abramsky. Notes on Strictness Analysis for Polymorphic Functions. Draft paper, 1988.

    Google Scholar 

  4. G.L. Burn, C.L. Hankin and S. Abramsky. Strictness Analysis for Higher-Order Functions. Science of Computer Programming, 7, 1986.

    Google Scholar 

  5. R.J.M. Hughes. Abstract Interpretation of First-Order Polymorphic Functions. Proceedings of the 1988 Glasgow Workshop on Functional Programming, Research Report 89/R4, University of Glasgow, 1989.

    Google Scholar 

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

    Google Scholar 

  7. D. Scott. Data Types as Lattices. SIAM Journal of Computing, Vol 5, No. 3, 1976.

    Google Scholar 

  8. P. Wadler. Strictness Analysis on Non-Flat Domains by Abstract Interpretation. In [AH 87].

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

John Hughes

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Baraki, G. (1991). A note on abstract interpretation of polymorphic functions. In: Hughes, J. (eds) Functional Programming Languages and Computer Architecture. FPCA 1991. Lecture Notes in Computer Science, vol 523. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540543961_18

Download citation

  • DOI: https://doi.org/10.1007/3540543961_18

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-54396-1

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics