begin

  ! the example in https://www.ancientgeek.org.uk/EMAS/EMAS_Papers/The_IMP_language_and_compiler.pdf
  integer i, j, k, n

  n = 42 ; ! a little initialisation has been added which was not explicit in the paper to avoid runtime errors.

  integer array a(0:100), b(0:n)
  
  a(n) = n for n = 0, 1, 100
  b(n) = n for n = 0, 1, 42
  write(n,3); newline
  
  n = 42
  
  j = 0; k = 0;

  cycle i = 1, 1, n
    j = j + a(i)
    k = k + b(i+1)        ;! should cause a runtime error since i+1 == n+1 and array b is 0:n ...
  repeat

  write(j, 5); write(k, 5); newline

endofprogram