Skip to main content

Reading, Writing and Relations

Towards Extensional Semantics for Effect Analyses

  • Conference paper
Programming Languages and Systems (APLAS 2006)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4279))

Included in the following conference series:

Abstract

We give an elementary semantics to an effect system, tracking read and write effects by using relations over a standard extensional semantics for the original language. The semantics establishes the soundness of both the analysis and its use in effect-based program transformations.

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. Abadi, M., Banerjee, A., Heintze, N., Riecke, J.G.: A core calculus of dependency. In: 26th Symposium on Principles of Programming Languages (POPL) (1999)

    Google Scholar 

  2. Banerjee, A., Heintze, N., Riecke, J.: Region analysis and the polymorphic lambda calculus. In: Proceedings of the 14th IEEE Symposium on Logic in Computer Science (LICS) (1999)

    Google Scholar 

  3. Benton, N.: Simple relational correctness proofs for static analyses and program transformations. In: Proceedings of the 31st ACM Symposium on Principles of Programming Languages (POPL) (January 2004), Revised version available from: http://research.microsoft.com/~nick/publications.htm

  4. Benton, N.: Semantics of program analyses and transformations. Lecture Notes for the PAT Summer School, Copenhagen (June 2005)

    Google Scholar 

  5. Benton, N., Hughes, J., Moggi, E.: Monads and effects. In: Barthe, G., Dybjer, P., Pinto, L., Saraiva, J. (eds.) APPSEM 2000. LNCS, vol. 2395, p. 42. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  6. Benton, N., Kennedy, A.: Monads, effects and transformations. In: 3rd International Workshop on Higher Order Operational Techniques in Semantics (HOOTS), Paris. Electronic Notes in Theoretical Computer Science, vol. 26. Elsevier, Amsterdam (1999)

    Google Scholar 

  7. Benton, N., Leperchey, B.: Relational reasoning in a nominal semantics for storage. In: Urzyczyn, P. (ed.) TLCA 2005. LNCS, vol. 3461, pp. 86–101. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  8. Gifford, D.K., Lucassen, J.M.: Integrating functional and imperative programming. In: ACM Conference on LISP and Functional Programming, Cambridge, Massachusetts (August 1986)

    Google Scholar 

  9. Helsen, S.: Bisimilarity for the region calculus. Higher-Order and Symbolic Computation 17(4) (2004)

    Google Scholar 

  10. Jones, S.P., Launchbury, J.: State in Haskell. Lisp and Symbolic Computation 8(4) (1995)

    Google Scholar 

  11. Lucassen, J.M., Gifford, D.K.: Polymorphic effect systems. In: Conference Record of the 15th Annual ACM Symposium on Principles of Programming Languages (POPL) (1988)

    Google Scholar 

  12. Moggi, E., Sabry, A.: Monadic encapsulation of effects: A revised approach (extended version). Journal of Functional Programming 11(6) (2001)

    Google Scholar 

  13. Naumann, D.: Observational purity and encapsulation. Theoretical Computer Science (to appear)

    Google Scholar 

  14. Pitts, A.M., Stark, I.D.B.: Operational reasoning for functions with local state. In: Higher Order Operational Techniques in Semantics. CUP (1998)

    Google Scholar 

  15. Plotkin, G.D., Power, J.: Notions of computation determine monads. In: Nielsen, M., Engberg, U. (eds.) FOSSACS 2002. LNCS, vol. 2303, p. 342. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  16. Reddy, U.S., Yang, H.: Correctness of data representations involving heap data structures. Science of Computer Programming 50(1-3), 129–160 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  17. Reynolds, J.C.: The meaning of types – from intrinsic to extrinsic semantics. Technical Report BRICS RS-00-32, BRICS, University of Aarhus (December 2000)

    Google Scholar 

  18. Sabelfeld, A., Sands, D.: A PER model of secure information flow in sequential programs. Higher-Order and Symbolic Computation 14(1), 59–91 (2001)

    Article  MATH  Google Scholar 

  19. Tofte, M., Talpin, J.-P.: Region-based memory management. Information and Computation 132(2), 109–176 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  20. Tolmach, A.: Optimizing ML: Using a hierarchy of monadic types. In: Leroy, X., Ohori, A. (eds.) TIC 1998. LNCS, vol. 1473, pp. 97–115. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  21. Wadler, P., Thiemann, P.: The marriage of effects and monads. ACM Trans. Comput. Logic 4(1), 1–32 (2003)

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Benton, N., Kennedy, A., Hofmann, M., Beringer, L. (2006). Reading, Writing and Relations. In: Kobayashi, N. (eds) Programming Languages and Systems. APLAS 2006. Lecture Notes in Computer Science, vol 4279. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11924661_7

Download citation

  • DOI: https://doi.org/10.1007/11924661_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-48937-5

  • Online ISBN: 978-3-540-48938-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics