Unfortunely, while the community is great, what it doesn't have is a direction, thus keeps pivoting every couple of years, and with that lost the adoption opportunity window it had a decade ago.
Funny, on another totally unrelated domain (business logic/rules engines) I was building something very very related - array broadcasting with semantic preservation through arbitrary
nesting levels
Strange to read this article and find no mention of Julia (but APL, Mojo, MLIR BQN etc.. which are not exactly widely used languages). It checks many of the boxes
User-Extensible Rank Polymorphism is just beautiful with the broadcast dot syntax. I don't think any other language has this clean and flexible implementation.
Others -- GPU programing, parallelism, etc. are pretty good with Julia. Real shame it hasn't taken off.
My ideal array language is one in which array operations are function compositions, since arrays are functions. A functional view of array expressions naturally minimizes needless temporaries in most cases.
12 comments
[ 2.9 ms ] story [ 39.9 ms ] thread> IMO this is what makes something an array language.
Great to hear. So what is it?
> Numpy also needs to be paired with a JIT compiler to make python a real array language
https://www.arraycast.com/episodes/episode111-ideal-array-la...
It can be faster than Fortran based library that is still being used by Matlab, Rust and Julia [1].
It will be interesting to compare Mojo moblas BLAS library with GLAS library performance in D.
[1] Numeric age for D: Mir GLAS is faster than OpenBLAS and Eigen (2016):
http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/...
User-Extensible Rank Polymorphism is just beautiful with the broadcast dot syntax. I don't think any other language has this clean and flexible implementation.
Others -- GPU programing, parallelism, etc. are pretty good with Julia. Real shame it hasn't taken off.
See https://github.com/llvm/llvm-project/blob/main/flang/docs/Ar....