I love k/q and see a lot of the ideas of array languages perculate into the mainstream thru numpy and Pandas. However, both are really shitty compared to a true array language.
I personally love k/q, J I'm not as keen about.
I've also created my own array language called xs: https://cryptm.org/xs/ I don't really work on it anymore, but it might be interesting to some folks researching/developing new array languages.
I think there's a lot further we can, and k/q definitely has a bunch of warts that hopefully shakti/k9 will solve.
I really want Shakti to have lexical scoping, and I feel like too many compromises are made for performance/simplicity reasons that reduces the ergonomics of current array languages.
Asking because I'm thinking of adding some form of array language to the statistical/data science Racket framework.
I like that k/q is a more traditional language in a sense, you can write code (if you have to) that looks like regular functional/imperative code. J is more obtuse and takes a more mathematical approach that can be confusing.
I do like forks and the point free style though.
K is architecturally distinct, in that it does not have true multidimensional arrays. It instead uses lists of vectors. This is logical given its main use case: finance, i.e. analysis of rather long series of low-dimensional data. Q is syntactic sugar on top of K.
https://en.wikipedia.org/wiki/K_(programming_language)
And I guess there's also Q.
https://code.kx.com/q/ref/
Which one of these has some industry traction?