H Start of begin block. ; end of procedure or begin block. All local descriptors are destroyed. R Return from routine. (see Conditional statements for exits from predicates). e.g. $10R,7,1,0 routine R(integer X, Y) {11X,21,1,0$12Y,21,1,0} R return ; end V Assign the result of the current function and return. M Assign the result of the current map and return. The left-hand side of the assignment is implied by type and form of the enclosing procedure; the right-hand side is popped from the stack. Note the form in which procedure type parameters are specified: routine R(routine S(integer X), integer Y) $10R,7,1,0{$11S,7,1,0$12Y,21,1,0} $11S,7,1,10{$13X,21,1,0} If a procedure type parameter itself has parameters which are procedures the parameters for those procedures are not specified. E.g. routine A(routine B(routine C(integer D))) $50A,7,1,0,{$51B,7,1,0} $51B,7,1,10,{$52C,7,1,0} 4