Stronger contenders for the "software analogue" remain film, theater, music, and architecture.
A couple from 2009: https://news.ycombinator.com/item?id=650149
I remember seeing that at the time but didn't notice who was the interviewer!
Does anybody know how array languages handle pointers and trees?
If you have a non-cyclic tree (e.g. a 256-trie) you can nest it directly: @/ will traverse to nodes, and COW keeps updates from trashing memory too much.
However trees are rarely the best data structure: Binary search on a sorted list can beat b-trees simply because the end of the search will already be in cache, so for a routing table of IP address ranges, I use something like:
ipStart where ipStart bin x
And I translated some of Aaron Hsu's APL ideas into k5. With a little massaging they work just as well: https://github.com/JohnEarnest/ok/blob/gh-pages/examples/key...
As they say, “It's one dollar for hitting it with the hammer, a hundred for knowing where to hit.”
Usage of APL-related languages in finance, KDB in particular, is always exaggerated. Where it is used, it is amazingly slow.