Modify Strand Assignment
From NARS2000
|
||||
A1 A2 ... An are all names with existing values, R is a scalar or vector. | ||||
If 1<⍴⍴R, signal a RANK ERROR. | ||||
If R is a scalar or one element vector, its item, in combination with the value of each name, is assigned to each name, as in Ai←Aifn ⊃⍬⍴R. | ||||
Otherwise, assume there are n names in the list: | ||||
If n≠⍴R, signal a LENGTH ERROR. | ||||
Otherwise, each successive item of R, in combination with the value of each successive name, is assigned to each successive name, as in Ai←Aifn i⊃R. |
For example, (A B C)⍴←⊂⍳3 is shorthand for A←A⍴⍳3 ⋄ B←B⍴⍳3 ⋄ C←C⍴⍳3. In contrast, (A B C)⍴←⍳3 is shorthand for A←A⍴1 ⋄ B←B⍴2 ⋄ C←C⍴3. Also, (A B C),←(1 2) 'abc' 1.1 is shorthand for A←A,1 2 ⋄ B←B,'abc' ⋄ C←C,1.1.