1. A computer-implemented method for translating an array variable function F in a source program to obtain executable object code, said array variable function F providing in one or more enclosing DO-loops the transformation of a first array variable A having one or more subscripts {a.sub.i } into a second array variable B=F(A) having one or more subscripts {b.sub.i }, wherein i is a non-zero positive integer, said method comprising the steps of: creating a subscript table ST.sub.A relating said subscripts {a.sub.i } to said enclosing DO-loops for said first array variable A; (b) transforming said subscript table ST.sub.A according to a first transform operator to create a subscript map SM.sub.A relating an enclosing DO-loops to a plurality of final scalarized DO-loops; (c) transforming said subscript map SM.sub.A according to a mapping rule R.sub.F to create a new subscript map SM'.sub.A ; and (d) combining said new subscript map SM'.sub.A and said subscript table ST.sub.A to create a new subscript table ST'.sub.A relating said subscripts {a.sub.i } to said plurality of final scalarized DO-loops, wherein said new subscript table ST'.sub.A represents a final subscript table ST.sub.B relating said subscripts {b.sub.i } to said plurality of final scalarized DO-loops for said second array variable B.