Probably it's (my) English, not being my native tongue.
I will try to explain.


DB:
> 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.

REB (reaction on this paragraph):
> 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  .
(...)
> So IMO it has nothing to do with "in J, compound (multi-
> dimensional) indices are addressed with boxes".

DB (continuing):
> There are many ways to present the rationale for this decision, but an
> easy one is:

REB (reaction on this paragraph):
> As this appears to be not a decision, it does need a rationale either.


Hope this is clear. Sorry if not.


R.E. Boss


> -----Oorspronkelijk bericht-----
> Van: [email protected] [mailto:programming-
> [email protected]] Namens Roger Hui
> Verzonden: dinsdag 31 augustus 2010 18:00
> Aan: Programming forum
> Onderwerp: Re: [Jprogramming] Splitting an integer into its digits
> 
> 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

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to