         Edinburgh IMP77 Compiler - Version 8.4
    1 %BEGIN
    2 %STRING(5) %ARRAY a(1:10)
    3 %STRING(5) %NAME ap
    4 %INTEGER i
    5 %ROUTINE conc(%STRING(5) %NAME x)
    6       x=x."a"
    7 %END
    8       a(i)=tostring(i+'0') %FOR i=1,1,1
    9       printstring("before conc "); printstring(a(1)); newline
   10       conc(a(i)) %FOR i=1,1,1
   11       printstring("afeter conc "); printstring(a(1)); newline
   12       %FOR i=1,1,1 %CYCLE
   13          ap==a(i)
   14          ap=ap."b"
   15        printstring("after 2nd conc "); printstring(a(1)); newline
   16          printstring(a(i)) %UNLESS a(i)=tostring(i+'0')."ab"
   17       %REPEAT
   18 %ENDOFPROGRAM
   24 Statements compiled
