Arrays as a primary data structure are interesting indeed, but the problem of the APL family has always been that arrays are its only data structure (in contrast to Lisp, that has other data structures besides lists). Nested/boxed arrays were a big step forward, but they remain limited and, together with the weak abstraction facilities, make APL a pain to use for many tasks. Add to this that typical implementations don't care about interfacing to the rest of the world, and you easily trap yourself in an island that is fascinating but limited.
However, as you say, the notion of plain values being a special case ("rank 0") of a uniform collection type is interesting and pratically relevant. It's what makes it difficult to implement APL ideas in other languages. This has been the main struggle in the early days of Numerical Python, when we tried to make Python scalars work as rank-0 arrays (and mostly failed). Later NumPy versions introduced its own scalar types for that reason, which have then been an eternal source of confusion for many users ("why is an element of a float array not a float?").