|
|
1.1 ! root 1: program frecur( output ); ! 2: var ! 3: time : integer; ! 4: direction : integer; ! 5: function pad( j : integer ) : integer; ! 6: const ! 7: indent = 4; ! 8: begin ! 9: {} ! 10: if ( j <= 0 ) then begin ! 11: j := 1; ! 12: end; ! 13: {} ! 14: pad := j * indent; ! 15: end; ! 16: procedure a( procedure xx ); ! 17: begin ! 18: writeln( ' ':pad(time) , 'a: about to xx()' ); ! 19: xx; ! 20: writeln( ' ':pad(time) , 'a: back from xx()' ); ! 21: end; ! 22: procedure b( procedure yy ); ! 23: procedure c; ! 24: begin ! 25: writeln( ' ':pad(time) , 'c: about to a(yy)' ); ! 26: time := time + direction; ! 27: a( yy ); ! 28: writeln( ' ':pad(time) , 'c: back from a(yy)' ); ! 29: end; ! 30: begin ! 31: if ( direction = 1 ) then begin ! 32: if ( time > 10 ) then begin ! 33: direction := -direction; ! 34: end; ! 35: time := time + direction; ! 36: writeln( ' ':pad(time) , 'b: about to b(c)' ); ! 37: b( c ); ! 38: writeln( ' ':pad(time) , 'b: back from b(c)' ); ! 39: end else begin ! 40: writeln( ' ':pad(time) , 'b: about to yy' ); ! 41: yy; ! 42: writeln( ' ':pad(time) , 'b: back from yy' ); ! 43: end; ! 44: end; ! 45: procedure d; ! 46: begin ! 47: writeln( 'd:' ); ! 48: end; ! 49: begin ! 50: time := 1; ! 51: direction := 1; ! 52: writeln( 'program: about to b( d )' ); ! 53: b( d ); ! 54: writeln( 'program: back from b( d )' ); ! 55: end.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.