A construct I quite often would find useful is a multi key list, ie the ability to have multiple keys for each item. Sure, it can be done by using several lists and object references, but it is non-trivial work and quite error prone before you get it right.
For example, I'm currently fiddling around with a program to generate mazes. For that, I need a list of walls, and I need to be able to quickly search them by each end point coordinate (each wall has two ends).
For example, I'm currently fiddling around with a program to generate mazes. For that, I need a list of walls, and I need to be able to quickly search them by each end point coordinate (each wall has two ends).