> it's clearly not expressive enough for general purpose programming
The problem of persisting arrays usually leads to handling them in bash.
Now you have two problems.[1]
[1] If you paraphrase Jamie Zawinski in an explanation, you then have two things to explain.