====== Arrays ====== Description ########### Arrays in M are achieved through subscripting, without strict allocation. They can be thought of as variables having child nodes for each subscript. They are mainly for logical relationships, not mathematical vectors/matrices, although that kind of structure can be emulated. See below examples. Examples ######## **Subscripting**:: SET A=1 SET A(1)=2 WRITE A *1* WRITE A(1) *2* Variables A and A(1) can be thought of as completely separate in this usage. It can be extended to any amount of subscripts, e.g. A(1,1) or A(2,1,3). **Non-Integer Subscripts**:: SET CAR="Mustang" SET CAR("Make")="Ford" WRITE CAR("Make") *Ford* Now we see why subscripts form a relation. Subscripts can be strings, to allow for relations like Person having Gender, Height, and Nationality (ex. Bob("Gender")="Male") **Fixed Array Emulation**:: FOR i=1:1:10 SET A(i)=10-i WRITE A(4) *6* The above code "allocates" a size-10 array called A. A's ten cells contain 10-(their index). This type of iteration is similar to a "normal" array structure. This can be done in higher dimensions.