A programming technique for recursive procedures |
| |
Authors: | B. J. Cornelius G. H. Kirby |
| |
Affiliation: | (1) Department of Computer Studies, University of Hull, HU6 7RX Hull, England |
| |
Abstract: | ![]() A programming technique is described for ALGOL-like recursive procedures in which parameters and local variables are replaced by variables global to the recursive procedure and declared in a surrounding non-recursive procedure. The stack and time required for execution of a variety of recursive procedures has been determined in the languages ALGOL 60, CORAL 66 and ALGOL 68 both when programmed using this technique and when using parameters. Detailed results are presented for the Ackermann function and for tree manipulation.The global technique gives considerable savings in stack for all recursions investigated. For call-dominated recursions the technique speeds up the execution time in ALGOL 60 and CORAL 66 by about 25%. In ALGOL 68 the parameterless recursive procedure must be declared in the closed-clause which forms the particular-program rather than in a surrounding procedure in order to achieve a similar improvement in execution time. |
| |
Keywords: | recursion programming technique ALGOL 60 CORAL 66 ALGOL 68 |
本文献已被 SpringerLink 等数据库收录! |