« first day (2846 days earlier)      last day (28 days later) » 

SJT
SJT
12:45
Monadic `f` takes a vector argt. It can be applied to each row of matrix `M` with `(f⍤1)M`, which I suppose I should prefer to splitting `M` in `f¨↓M`.

Either `(f⍤1)⍉M` or `f¨↓⍉M` applies `f` to the columns – or is there a way to do it without the `⍉`?
12:57
no because rank operator is leading-axis oriented - the rank operator and dyadic transpose are the flat array / leading axis / more general sisters of each and and enclose-axes ⊂[k] for some vector k
in theory there could be performance gains in many cases because the interpreter doesn't have to chase pointers as in a nested array, but in practice it's more like - those who learned APL in the past prefer (axes / enclose / each) and those who learn more recently prefer (rank operator / transpose)
these days I think of ⊂[k] as syntactic sugar over (F⍤x)y⍉a (or should it be F⍤k⊢y⍉a?)
The preference of rank operator is also because it can apply to any function, including user-defined functions, directly without this splitting. Also it's ⎕IO-independent unlike enclose-axes. Enclose-axes is also rank-dependent, like F⍤2⊢a always acts on 2-cells (matrices) of a, but ⊂[1]a could act on columns of a matrix, or down the planes of a 3D array.
Oh so to answer your question, f¨⊂[1]M - but remember ⊂[k] does a sneaky transpose under the hood, hence why I call it syntactic sugar. See, for example,
      ⊂[3 2]2 3 4⍴⎕A
┌───┬───┐
│AEI│MQU│
│BFJ│NRV│
│CGK│OSW│
│DHL│PTX│
└───┴───┘
      ⊂⍤2⊢1 3 2⍉2 3 4⍴⎕A
┌───┬───┐
│AEI│MQU│
│BFJ│NRV│
│CGK│OSW│
│DHL│PTX│
└───┴───┘
SJT
SJT
13:28
Tx. Helped me understand my preference for ⍤!
@SJT For next time, also consider asking APLcart.

« first day (2846 days earlier)      last day (28 days later) »