Correction: "An argument must always have one outer cell." -- except in the degenerate case. Similarly, "An argument has [zero or more] inner cells".
On Wed, Jan 20, 2016 at 4:36 PM, Matthew Baulch <[email protected]> wrote: > Sorry. Thanks for that correction. I quite like Robert's suggestion, > though I took it on board without adequate attribution. Wasn't trying to be > sneaky, though I see it might appear that way. > > Pairing 'outer shape' and 'cell shape' does seem a bit unnatural. I think > we need a phrase like > (i) the argument's 'frame of cells', or > (ii) the argument's 'inner and outer shapes'. > > The decision is not mine, but I can't see how adopting 'outer' on its own > is wise. > > Here's an idea: > > An argument has inner cells, each with shape 'inner shape'. Any argument > must always have one outer cell. It has shape 'outer shape'. > > Any thoughts? > The alternative to frame / cell shape being discussed is outer shape / cell > shape, not outer shape / inner shape. I don't believe anyone has used > "inner shape" before (and it's not as good as "cell shape"). > > On Tue, Jan 19, 2016 at 2:14 AM, Matthew Baulch <[email protected]> > wrote: > > > Outer/inner makes perfect sense. Seems unlikely to lead anyone astray. > > To play devil's advocate, it might seem silly but maybe a newbie could > > guess that inner/outer shape relates to boxing. Is this paranoia? I don't > > know. > > > > The important question is: who is the terminology intended to serve? The > > answer is, of course, everyone. But in what proportions? There are > inherent > > trade-offs. As noted by Roger and others, > > > > Outer and inner shape > > Pros: fit together like a pair of gloves, suggest a dependency of some > sort > > (hopefully on rank!), is being adopted by Dyalog in a similar form > (maybe a > > pro?). > > Cons: has an unfortunate though slight suggestion of boxing. > > > > Frame: > > Pros: cells-in-frame concept makes some intuitive (and pictorial) sense, > > frame is (?) unused for terminology anywhere else in J so unlikely to be > > confused. > > Cons: has historical context around 'empty', tempts us to use the word > > empty, cells-in-frame concept breaks down when frame is empty (even > though > > cells may still exist), no natural pairing with cells. > > > > Cells > > Pros: sort of makes sense...? > > Cons: has various meanings depending on the context, doesn't imply that > > shape or rank are at all important, no natural pairing with frame. > > > > I'm sure I've missed something. Anyway, I think there's a strong case for > > inner/outer shapes. > > > > On Tue, Jan 19, 2016 at 5:43 AM, Henry Rich <[email protected]> > wrote: > > > > > I really like this suggestion. "frame" makes sense for result: the > frame > > > is held fixed while the cell-results are coerced into the same shape, > and > > > then assembled using the frame. For the arguments, "outer shape" shows > > the > > > dependence on the argument shape and (implicitly) the verb rank. > > > > > > I wonder whether we should try to move the documentation in this > > > direction. There would need to be a general consensus in favor. > > > > > > Henry Rich > > > > > > > > > On 1/18/2016 11:52 AM, Roger Hui wrote: > > > > > >> The terminology originated in SHARP APL in the 1980s. "Frame" was at > > >> times > > >> called "outer shape". In some situations, "outer shape" may be a > > better, > > >> more easily understood term. You know, cell shape and outer shape; > > outer > > >> shape is part of the shape; etc. > > >> > > >> > > >> > > >> > > >> On Mon, Jan 18, 2016 at 7:19 AM, Jose Mario Quintana < > > >> [email protected]> wrote: > > >> > > >> I would not be the one arguing for empty frame vs zero frame > terminology > > >>> :) > > >>> (thanks for providing the context). > > >>> > > >>> Regarding frame, I meant it in the sense that Ken Chakahwata did: "to > > >>> have > > >>> a J definition of that fictitious primitive." > > >>> > > >>> Your executable model can, of course, readily address Ken's question > > and > > >>> other similar questions for specific instances (pointing out, albeit > > >>> rather > > >>> tacitly, that such J definition already existed, was my main reason > for > > >>> mentioning your article): > > >>> > > >>> rk =. #@$ > > >>> er =. (0:>.(+rk))`(<.rk) @. (0:<:[) > > >>> fr =. -@er }. $@] > > >>> cs =. -@er {. $@] > > >>> > > >>> (Y=. i.2 3 4) > > >>> 0 1 2 3 > > >>> 4 5 6 7 > > >>> 8 9 10 11 > > >>> > > >>> 12 13 14 15 > > >>> 16 17 18 19 > > >>> 20 21 22 23 > > >>> > > >>> 3 (er;fr;cs) Y NB. effective rank; frame; cell shape > > >>> ┌─┬┬─────┐ > > >>> │3││2 3 4│ > > >>> └─┴┴─────┘ > > >>> > > >>> 2 (er;fr;cs) Y NB. effective rank; frame; cell shape > > >>> ┌─┬─┬───┐ > > >>> │2│2│3 4│ > > >>> └─┴─┴───┘ > > >>> _1 (er;fr;cs) Y NB. effective rank; frame; cell shape > > >>> ┌─┬─┬───┐ > > >>> │2│2│3 4│ > > >>> └─┴─┴───┘ > > >>> > > >>> > > >>> > > >>> On Sun, Jan 17, 2016 at 11:33 PM, Roger Hui < > [email protected] > > > > > >>> wrote: > > >>> > > >>> I did not define them; Roland Pesch did: Empty Frames in SHARP APL > > >>>> <http://www.jsoftware.com/papers/EmptyFrames.htm>, 1986. I did > > rename > > >>>> them > > >>>> to "zero frames". Read the 1986 paper and you can decide for > yourself > > >>>> whether "empty frame" or "zero frame" is the better name. > > >>>> > > >>>> > > >>>> > > >>>> On Sun, Jan 17, 2016 at 5:28 PM, Jose Mario Quintana < > > >>>> [email protected]> wrote: > > >>>> > > >>>> The verb (frame) as well as the Zero Frame concept are defined in > [0] > > >>>>> > > >>>> by > > >>> > > >>>> Roger. > > >>>>> > > >>>>> [0] Rank and Uniformity > > >>>>> http://www.jsoftware.com/papers/rank.htm > > >>>>> > > >>>>> On Sun, Jan 17, 2016 at 7:11 PM, Ken Chakahwata < > > >>>>> [email protected]> wrote: > > >>>>> > > >>>>> My guess is that it would help if we could imagine that we had a > > >>>>>> > > >>>>> primitive > > >>>>> > > >>>>>> called 'frame' in the same way as we have one called 'shape' i.e. > $ > > >>>>>> Then one way to get to the precise meaning of frame is to have a J > > >>>>>> definition of that ficticious primitive. At a guess, this > primitive > > >>>>>> requires the 'rank' of the cells in order to then return the > > >>>>>> > > >>>>> appropriate > > >>>> > > >>>>> frame. > > >>>>>> If we have an array of shape (x,y,z), and we stipulate cells of > rank > > >>>>>> > > >>>>> 3, > > >>> > > >>>> then the frame is presumably empty? Not sure of this... but anyhow, > > >>>>>> > > >>>>> just > > >>>> > > >>>>> a > > >>>>> > > >>>>>> thought... > > >>>>>> > > >>>>>> Enjoy > > >>>>>> ken > > >>>>>> > > >>>>>> -----Original Message----- > > >>>>>> From: Programming [mailto: > [email protected]] > > >>>>>> > > >>>>> On > > >>> > > >>>> Behalf Of Henry Rich > > >>>>>> Sent: 17 January 2016 23:59 > > >>>>>> To: [email protected] > > >>>>>> Subject: Re: [Jprogramming] Definition: Frame of an argument > > >>>>>> > > >>>>>> The terminology I use is an (x by y by z) array of cells, or an > > array > > >>>>>> > > >>>>> of > > >>>> > > >>>>> cells with frame (x,y,z), emphasizing that the frame is a (part of > > >>>>>> > > >>>>> the) > > >>> > > >>>> shape rather than an array. > > >>>>>> > > >>>>>> Henry Rich > > >>>>>> > > >>>>>> On 1/17/2016 6:16 PM, Raul Miller wrote: > > >>>>>> > > >>>>>>> Hmm... ok, reviewing > > >>>>>>> http://www.jsoftware.com/help/primer/frame_and_cell.htm 'frame' > > >>>>>>> > > >>>>>> does > > >>> > > >>>> get used that way. > > >>>>>>> > > >>>>>>> I was thinking of the frame as having a shape rather than being > the > > >>>>>>> > > >>>>>> shape. > > >>>>>> > > >>>>>>> Then again, since you can think of an array as being (for > example) > > >>>>>>> > > >>>>>> an > > >>> > > >>>> (x,y,z) frame of cells, I do not think that my interpretation was > > >>>>>>> entirely incorrect, either. So I suppose I have gotten myself > into > > >>>>>>> > > >>>>>> a > > >>> > > >>>> "much ado about nothing" sort of issue. > > >>>>>>> > > >>>>>>> Thanks, > > >>>>>>> > > >>>>>>> > > >>>>>> > > ---------------------------------------------------------------------- > > >>> > > >>>> For information about J forums see > > >>>>>> > > >>>>> http://www.jsoftware.com/forums.htm > > >>> > > >>>> > > >>>>>> > > ---------------------------------------------------------------------- > > >>> > > >>>> For information about J forums see > > >>>>>> > > >>>>> http://www.jsoftware.com/forums.htm > > >>> > > >>>> > ---------------------------------------------------------------------- > > >>>>> For information about J forums see > > http://www.jsoftware.com/forums.htm > > >>>>> > > >>>> > ---------------------------------------------------------------------- > > >>>> For information about J forums see > > http://www.jsoftware.com/forums.htm > > >>>> > > >>>> > ---------------------------------------------------------------------- > > >>> For information about J forums see > http://www.jsoftware.com/forums.htm > > >>> > > >> ---------------------------------------------------------------------- > > >> For information about J forums see > http://www.jsoftware.com/forums.htm > > >> > > > > > > ---------------------------------------------------------------------- > > > For information about J forums see http://www.jsoftware.com/forums.htm > > > > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
