I am having trouble parsing your sentence: > As this appears to be not a decision, it does need a rationale either.
which immediately follows > So IMO it has nothing to do with "in J, compound (multi- > dimensional) indices are addressed with boxes". Once I understand what you are saying, perhaps I can respond (if a response is required). ----- Original Message ----- From: "R.E. Boss" <[email protected]> Date: Tuesday, August 31, 2010 5:21 Subject: Re: [Jprogramming] Splitting an integer into its digits To: 'Programming forum' <[email protected]> > > Van: [email protected] [mailto:programming- > > [email protected]] Namens Dan Bron > > Verzonden: dinsdag 31 augustus 2010 1:42 > (...) > > > > If you're wondering why _1 _1 doesn't give the bottom-right > corner of the > > array, like f[0][0] (or maybe f[0;0]) would give the top-left > corner of a > > 2D > > array in a C-like language, the answer is: in J, compound > > (multi-dimensional) indices are addressed with boxes. > > > > There are many ways to present the rationale for this > decision, but an > > easy > > one is: conceptually, a compound index is a single, atomic > thing, yet has > > structure (this seems contradictory until you work through > some examples, > > e.g. "the bottom-right corner" of a 2D array). In J, > atoms with > > (arbitrary) > > structure are represented with boxes. Voila. > > > (...) > > > I disagree with your reasoning. > > The only reason for the behavior of { is its rank. So the answer > to "why _1 > _1 { (NB. the { !(reb)) doesn't give the bottom-right corner of > the array" > is: the left hand rank of the dyad { is 0 . > Compare this to dyad {. which has a lh-rank of 1 : > > _1 _1 {. i.4 5 > 19 > > So IMO it has nothing to do with "in J, compound (multi- > dimensional) indices > are addressed with boxes". > As this appears to be not a decision, it does need a rationale either. ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
