I thought it would be good to discuss this and see if we can come up with a real alternative.
HashMap<Vec<String>, Vec<Rc<Cell<int>>>>. It’s heavy, and it’s easy to mismatch the closing brackets.
One idea was to remove angle brackets entirely.
I find this a bit too extreme, but only removing nested angle brackets might be a good compromise. The question is then what to do with commas: they could be limited to the first level of nesting, or removed.
That would give us
HashMap<Vec String, Vec Rc Cell int>
HashMap<Vec String Vec Rc Cell int>
Unfortunately that reduces readability in some cases. If the commas stay, the rules are a bit more complex as well.
Are there any other good alternatives?