a # 1 60 R ' r#f vform m;i;j;Lio ' a # a,[1] ' Lio#0 ' a # a,[1] ' ''not a matrix''hang 2^=RRm ' a # a,[1] ' ''wrong length left argument''hang ~2|Rf ' a # a,[1] ' f#f[0],(((-1+Rf)%2),2)R1Uf ' a # a,[1] ' ''wrong row count''hang(1YRm)^=+/j#f[;2] ' a # a,[1] ' f#f[;0 1] ' a # a,[1] ' r#(0,(1URm)X''''Rf)Ri#0 ' a # a,[1] 'l1:r#r,[0]f[i;]Fm[(+/iYj)+Ij[i];] ' a # a,[1] ' $l1X(Rj)>i#i+1 ' a # a,[1] ' $0 ' a # a,[1] '"vform - variable format by row of a matrix ' a # a,[1] '"from ''the apl handbook of techniques'' copyright 1978, ibm. ' a # a,[1] '"-the apl format function (F) acts uniformly on all rows of ' a # a,[1] '" a matrix while allowing variable widths and decimal places' a # a,[1] '" from column to column. vform permits a uniform width for ' a # a,[1] '" all columns while allowing individual row decimal places. ' a # a,[1] '" m is a numeric matrix. f is a numeric vector of the form ' a # a,[1] '" w,d1,n1,d2,n2,...where w is the format width for all col- ' a # a,[1] '" umns. d1 is the number of decimal places in the first ' a # a,[1] '" block of rows; n1 is the number of rows in the first ' a # a,[1] '" block, etc. Rf must be odd, and the sum of n''s must equal' a # a,[1] '" the number of rows in the matrix. ' a # a,[1] '"-uses: Ghang, although Gescape may be substituted ' Lfx a