I have two matrices `A`

and `B`

. Rather than a full Kronecker product `kron(A,B)`

, I would like to Kronecker in a row-by-row fashion. That is, the first row of the resulting matrix should have `kron(A[1,:],B[1,:])`

, the second row `kron(A[2,:],B[2,:])`

, and so on. The two matrices will have the same number of rows of course.

`mapslices`

seems to only accept one item, not two. I think I want something like `map(kron,zip(eachrow(A),eachrow(B)))`

but this does not work. It is also important that the ordering of the columns is the same as what `kron(A,B)`

would produce.

I have a function that works, but when is that ever enough?

```
function kronrow(X,Y)
N,K = size(X)
L = size(Y,2)
res = Matrix{Float64}(undef,N,K*L)
for i=1:N
res[i,:] = @views kron(X[i,:],Y[i,:])
end
return res
end
```

Is there a better way?