1979 | OriginalPaper | Chapter
Efficiency, Heaps and Lifetimes
Author : Richard Bornat
Published in: Understanding and Writing Compilers
Publisher: Macmillan Education UK
Included in: Professional Book Archive
Activate our intelligent search to find suitable subject content or patents.
Select sections of text to find matching patents with Artificial Intelligence. powered by
Select sections of text to find additional relevant content using AI-assisted search. powered by
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.