

This is close, but as someone already said, an index into a list just means you are mutating the list.
Your stable “identifier” needs to be a function, ie. a reused design pattern. Compared to the list, this would be an index function which gets an element from an arbitrary list, meaning you don’t have to mutate your list anymore, you just build a new one which still works with your function.
This is why languages which avoid mutation and side effects are always (to my knowledge) functional languages.
The hate and down votes are not for having an opinion on the language, they are for self-righteously proclaiming that opinion in inappropriate places. Someone sharing a cool project they made is not the place to start gatekeeping their choice of tech. That’s just being an asshole.