"A Programming Language", 1962, page 39: Although in certain fields, such as tensor analysis, it is convenient to define more general arrays whose _rank_ specifies the number of levels of structure (i.e. zero for a scalar, one for a vector of scalars, two for a vector of vectors (matrix), three for a vector of matrices, etc.), ...
----- Original Message ----- From: Henry Rich <[EMAIL PROTECTED]> Date: Saturday, October 6, 2007 12:04 Subject: RE: [Jgeneral] Empty dimensions confuse me To: 'General forum' <[email protected]> > > You can not use the normal English meaning of "array" > > to make this argument. Array has a special meaning > > in mathematics/computer science, wherein its meaning > > is due in no small part to its usage in APL (and J). > > I realize that J can use the terms any way it wants to, > but I suggest to you that you shouldn't depart from > standard meanings without sufficient reason. It is up > to each of us to decide what is sufficient; we talk about > it to try to establish a common terminology. > > [Sometimes the Dictionary terminology is so wrong, as > in using the term 'global assignment' for something like > abc_xyz_ =: 5, that agreement is impossible] > > > > > > I would use 'noun' to mean 'array or atom' in the > > > cases you mention. > > > > > > Why have two words to mean the same thing? Currently, > > > 'noun' = 'array'. > > > > So you would say "functions apply to noun arguments > > and return noun results". That mixes two metaphors: > > > > noun > verb adverb conjunction > > array function operator > > I would say 'verbs apply to nouns operands and produce noun > results'. > > I would never use the word 'operator' because to a > mathematician/physicist it means a modifier, while to a > C programmer it means a verb. > > I would also be wary about calling something a 'function' > when it can return different values on successive calls with > the same operand. > > So when I'm talking J, I would say 'verb'. > > I would use 'array' to mean a noun that has dimensions, and > 'atom' to mean a noun that does not. 'Noun' covers both cases. > > > > > > > I want 'array' to mean rank > 0 to avoid > > > the clumsy 'non-atomic array'. > > > > If "non-atomic array" is clumsy, then "array and atom" > > is no less so, and would be used much more. e.g. > > What does the monad [EMAIL PROTECTED] do? It finds the rank > > of an array (or atom). For that matter, what does > > the monad $ do? Finds the shape of an array (or atom). > > [EMAIL PROTECTED] finds the rank of a noun, and $ finds the shape of > a noun. What's hard about that? > > Once you get over thinking that 'array' must include > atoms, you can get down to the real issues: > > 0) Do we need a word for 'non-atomic noun'? I say yes. > > 1) Is there a better word than 'array'? I say no. > > 2) Would people be confused by a change in terminology? I > say no. ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
