Skip to main content

Efficiency, Heaps and Lifetimes

  • Chapter
Understanding and Writing Compilers

Part of the book series: Macmillan Computer Science Series

  • 60 Accesses

Abstract

In the discussion in chapters 11, 12 and 13 I emphasise that a recursive programming language such as PASCAL, ALGOL 60 or ALGOL 68 can be implemented almost as efficiently as FORTRAN. In the case of system programming Languages such as BCPL, BLISS or C ‘almost as efficiently’ isn’t good enough: these languages must be implemented extremely efficiently, and certainly more efficiently than FORTRAN, in order to satisfy the demands of their users. In this chapter I discuss two ways in which efficiency can be improved. The first improvement involves the use of special stack-handling instructions which reduce the number of instructions required in procedure call and return. The second improvement relies on source language restrictions which enable the object program to address the stack with only a single register, thus reducing the register manipulations required in procedure call and return.

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.

Author information

Authors and Affiliations

Authors

Copyright information

© 1979 Richard Bornat

About this chapter

Cite this chapter

Bornat, R. (1979). Efficiency, Heaps and Lifetimes. In: Understanding and Writing Compilers. Macmillan Computer Science Series. Palgrave, London. https://doi.org/10.1007/978-1-349-16178-2_15

Download citation

  • DOI: https://doi.org/10.1007/978-1-349-16178-2_15

  • Publisher Name: Palgrave, London

  • Print ISBN: 978-0-333-21732-0

  • Online ISBN: 978-1-349-16178-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics