2 research outputs found

    Inlining Semantics for Subroutines which are Recursive

    No full text
    Many modern programming languages offer a facility for "inlining" designated procedure and function calls, but this process is not well defined in most language standards documents. We offer a model for inlining which has the property that the resulting code does not depend upon the presentation of the order of function definitions, and which also provides a finite and consistent interpretation for the inlining of mutually recursive functions. Finally, when used on "tail-recursive" functions, our model of inlining provides for the equivalent of "loop unrolling". Introduction Many programming languages---e.g., Fortran, Ada, C++, Common Lisp---offer a facility for "macro-expanding" procedure and function calls, so that the operations of the procedure or function are performed "in line" with the other operations of the calling procedure rather than being performed "out of line" within a "closed" subroutine [Allen80] [Harrison77]. The goal of such an integration is to improve execution ..

    Inlining semantics for subroutines which are recursive

    No full text
    corecore