Привет, я хочу создать дерево, которое хранит двусторонние ссылки между родителем и дочерними элементами. Но это кажется невозможным, поскольку, когда я создаю первый объект, у меня еще нет другого, поэтому я не могу ссылаться на него. Вот пример кода.
-record(node,{name,children,root}).
main()->
A = #node{name="node-A",
children=[B], %variable B is unbound
root=nil},
B = #node{name="node-B",
children=[],
root=A},
Tree = A.
Другим примером этой проблемы может быть реализация двусвязного списка (http://en.wikipedia.org/wiki/Double_linked_list).
-record(node,{prev,name,next}).
main()->
A = #node{prev=nil,
name="node-A",
next=B}, % variable B is unbound
B = #node{prev=A,
name="node-B",
next=nil},
LinkedList = A.
Есть ли способ реализовать такую структуру.