Search Top Index
HELP LOOPS J. L. Cunningham July 1982 Revised: Adrian Howard Mar 1992 Revised A.S. May 2012 The usual way to make POP-11 do some instructions several times (iteration) is to use loops (also called iterative constructs). See: *FOR --- Iteration over lists and structures (The HELP *FOR file presents a variety of loop forms including parallel iteration over different lists) *FOREACH --- Selective iteration over a database, using pattern matching *FOREVERY --- Like -foreach-, but matches a list of patterns, coping with all possible combinations of matches (except for segment variables using "??") *REPEAT --- Repeats a set of actions indefinitely (but see "quit" options below) *REPEAT N TIMES --- Repeats a set of actions a specified number of times *WHILE --- Repeats a set of actions while a condition is -true- *UNTIL --- Repeats a set of actions until a condition is -true- Loops can be interrupted, conditionally or unconditionally, see: *QUITLOOP --- to jump out of one or more enclosing loops *QUITIF --- to jump out of a loop if a condition becomes -true- *QUITUNLESS --- to jump out of a loop if a condition becomes -false- *NEXTLOOP --- to continue an enclosing loop (start next iteration) *NEXTIF --- to restart a loop if a condition becomes -true- *NEXTUNLESS --- to restart a loop if a condition becomes -false- All the above can take an extra integer argument specifying that the Nth enclosing loop should be terminated or continued. The *RETURN command terminates the execution of the current procedure, and also jumps out of any loops. See HELP *FOR_FORM for information on creating new looping constructs. For alternatives to the above see: *APPLIST --- Applies a procedure to each element of a list *MAPLIST --- As -applist-, but returning a changed copy of list *RECURSION --- A short introduction to recursion techniques *GOTO --- Transfers control within a procedure (NOT recommended) *GO_ON --- Jump to one of a list of labels *SWITCHON --- A 'case' construct Also see: HELP *CONTROL --- Information on POP-11 control structures REF *FASTPROCS --- Information on non-checking iteration constructs. REF *POPSYNTAX --- Syntax diagrams for POP-11. REF *SYNTAX --- More on POP-11 syntax --- $usepop/pop/help/loops --- Copyright University of Sussex 2012. All rights reserved. ----------