Пытаюсь создать структуру похожую на дерево, где на верхнем уровне несколько переменных, и от каждой отходят несколько ветвей, от которых в свою очередь тоже отходят несколько ветвей. Причем несколько "родителей" могут относиться к одному и тому_же "листу".

Вопрос в том - какую лучше всего использовать для этого структуру данных в языке Perl?
Пока все мысли не идут дальше hash of arrays, в которых данные будут ключами к очередной hash of arrays.
Есть ли что проще или я изобретаю "велосипед", где он уже существует?