u&.>  Is backed by special code that avoids explicit boxing and unboxing.
And, if the contents of the boxes are inplaceable, u is executed inplace.

Henry Rich

On Fri, Jun 17, 2022, 1:39 AM Elijah Stone <elro...@elronnd.net> wrote:

> On Thu, 16 Jun 2022, Marshall Lochbaum wrote:
>
> > You seem to think building these out of boxes makes some philosophical
> > difference.  I disagree.  Boxes are used to implement array nesting.
>
> I do think it makes a difference.  But there is also a practical question:
> what patterns does the language encourage?
>
> It is possible to go even further: boxes do not need to be in the language
> at
> all, as they can be implemented in userspace (albeit not in a modular
> fashion).
>
>
> > No. The marker can be derived as part of the previous operation (*&.>),
> so
> > making it part of the next one duplicates information.
>
> *&.> is two operations: multiplying, and boxing.  (Actually it's three,
> since
> it also unboxes, or really four, since it requires that the right argument
> be
> pre-boxed.)  */, or *"_1 _ (same thing) is only one
> operation--multiplication--with the rank specifying how the multiplication
> is
> to be performed (or two, if you consider rank to be an operation unto
> itself).
> No information is duplicated, then, because, as the result is a flat array
> rather than a boxed array, there are multiple ways of joining it.  (This
> is
> also clearly more suggestive.)
>
> With nests, the operations are:
>
> - enclose
>
> - multiply each
>
> - join
>
> with boxes, and a requisite 'join', the operations are:
>
> - multiply at rank
>
> - join selected axes
>
> The rank and axis specifications of the latter form speak to its
> generality.
>
>   -E
> ----------------------------------------------------------------------
> 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