> I first saw the idea in the 1980s in
> the documentation for the Connection Machine,
> http://en.wikipedia.org/wiki/Connection_Machine
> which had a machine instruction for doing
> x f//.y for a small set of functions f and certain x's.

Found it.  W. Daniel Hillis, "The Connection Machine",
MIT Press, 1987, Section 2.6, Generalized Beta.
http://books.google.ca/books?id=xg_yaoC6CNEC&pg=PA46&lpg=PA46&dq=Connection+Machine+generalized+beta#v=onepage&q=Connection%20Machine%20generalized%20beta&f=false

This is a publication in book form of Hillis' Ph.D. thesis.



----- Original Message -----
From: Roger Hui <[email protected]>
Date: Wednesday, May 18, 2011 10:46
Subject: Re: [Jprogramming] Aggregation
To: Programming forum <[email protected]>

> Although the APL90 paper
> http://www.jsoftware.com/papers/J1990.htm
> does not refer to "key", I tried some "key"
> expressions just now in the J1990 shareware
> version distributed at APL90, and I got:
> 
>    1 1 2 1 3 </. 'abcde'
> ┌───┬─┬─┐
> │abd│c│e│
> └───┴─┴─┘
>    1 1 2 1 3 +//. 100*1 2 3 4 5
> 700 300 500
> 
> So "key" was introduced quite early, sometime
> between the submission of final copy for APL90
> and the time of the conference, August 13-17, 1990.
> 
> 
> 
> ----- Original Message -----
> From: Roger Hui <[email protected]>
> Date: Tuesday, May 17, 2011 19:06
> Subject: Re: [Jprogramming] Aggregation
> To: Programming forum <[email protected]>
> 
> > The cited article has the passage:
> > 
> >  The key adverb was not in the initial version of J. 
> >  It came in later at the request of the J user community, 
> >  notably Joey Tuttle. 
> > 
> > This is not consistent with what I remember.
> > I first saw the idea in the 1980s in
> > the documentation for the Connection Machine,
> > http://en.wikipedia.org/wiki/Connection_Machine
> > which had a machine instruction for doing
> > x f//.y for a small set of functions f and certain x's.
> > In any case, the October 1990 dictionary
> > had u/. with the same definition as now.
> > (The earliest public version of J, available
> > at APL90, was dated July 1990.  
> > http://www.jsoftware.com/papers/J1990.htm
> > That version did not have "key".)
> > 
> > In any case, it is true that many case of the
> > special code for u/. are "JKT specials",
> > implemented in response to code Joey posted
> > or in expectation that they would be useful
> > for what he does.
> > 
> > 
> > 
> > ----- Original Message -----
> > From: "Lettow, Kenneth" <[email protected]>
> > Date: Tuesday, May 17, 2011 17:37
> > Subject: Re: [Jprogramming] Aggregation
> > To: Programming forum <[email protected]>
> > 
> > > Ian,
> > > 
> > > I best understood key after reading a book you edited ;-)
> > > 
> > > To summarize... 
> http://www.jsoftware.com/jwiki/Doc/Articles/Play151> > 
> > > All the best,
> > > 
> > > Ken
> > > 
> > > -----Original Message-----
> > > From: [email protected]
> > > [mailto:[email protected]] On Behalf Of Ian Clark
> > > Sent: Tuesday, May 17, 2011 5:09 PM
> > > To: Programming forum
> > > Subject: [Jprogramming] Aggregation
> > > 
> > > I'm being lazy here. But I need a better answer than I can 
> > devil out
> > > myself. It occurs in a recent submission to Vector...
> > > 
> > > I have an array like this (which may be unsorted, and can 
> grow very
> > > large):
> > > 
> > > 1 100
> > > 1 100
> > > 1 20
> > > 1 400
> > > 2 30
> > > 2 200
> > > 2 300
> > > 33        100
> > > 33        100
> > > 33        100
> > > 
> > > I want to collapse it to:
> > > 
> > > 1 620
> > > 2 530
> > > 33        300
> > > 
> > > i.e. summing over subheadings.
> > > The original example had A B C  in place of 1 2 33, but 
> > > numbers will
> > > do, to save boxing. We don't know the full set of A B C ... in
> > > advance. Nothing to be assumed about the first column, 
> except 
> > it is
> > > +ve integers. But I'm also interested in the case where the first
> > > column lies in the set: i.(n) for some n>0. In other words 
> > they 
> > > can be
> > > squashed up.
> > > 
> > > 1. There's simply got to be a "jem" to do it. Suggestions, please.
> > >   - Transpose the array if you wish. Box it: 1 100 ; 1 100 
> > ; 1 20
> > > ; ...
> > > -whatever.
> > >   - No, of course I don't want a looping solution :)
> > > 
> > > 2. What do you call this process? I call it "aggregation" -- 
> > but I
> > > think the name differs across disciplines.

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

Reply via email to