================================================================== LESSON 4: Shape, Tally, Arrays, Tables ( $ # ) ================================================================== A single value, such as the number '2' or the letter 'a' is refered to an an 'atom'. Atoms are assigned to a name with the 'copula' operator '=.' Thus, a=. 1 a 1 a=. 1 2 3 a 1 2 3 a=. 'abc' a abc An array of values like this is called a 'list' or a 'vector'. If the noun 'a' only had one value, it would be called a 'scalar' or an 'atom'. The '#' (tally) verb counts the number of items in the array. a=. 1 2 3 44 55 88 #a 6 The '$' (shape) verb indicates how the items in the array are indexed. $a 6 a=. 0 1 2 3 4 5 6 7 8 9 10 11 b=. (3,4) $a b 0 1 2 3 Pronoun 'a' is a simple one-dimensional list or vector, 4 5 6 7 but 'b' is a two-dimensional table or matrix. We 8 9 10 11 specified the shape of the table as (3,4), that is, 3 rows of 4 columns each. $b 3 4 The shape is 3,4 c=.(2,6) $a Here we specified a table of shape 2,6 c 0 1 2 3 4 5 6 7 8 9 10 11 $c 2 6 Now, does '#c' give us the total number of items in c, as we expect? #c 2 #b 3 No! it only gives us the number of rows. What's going on here? (See lesson 5) ================================================================== END OF LESSON 4 ==================================================================