callandreturn
Call and return, or call-and-return control flow, is the fundamental mechanism by which a program transfers execution from a caller to a subroutine and later resumes at the point of departure after the subroutine finishes. A call passes arguments to the callee and transfers control to the subroutine’s entry point; a return transfers control back to the caller and may supply a result.
Implementation typically relies on a call stack. The caller pushes a return address and arguments according
Tail calls are a notable optimization in which the callee immediately returns to the caller, allowing the
Call and return is distinct from other control-flow constructs such as coroutines, generators, or asynchronous callbacks,
Historically, subroutine calls emerged in early languages such as Fortran and Algol and became the dominant