Thank you Athanasius! It does help. I'm working on a molecular object system (atoms, molecules, bond, angles, dihedrals, etc). The work has turned out to be something of a conceptual cleanser, and this is a good example. From the perspective of atoms and bonds in molecules, placing atoms into bonds that have bond methods and attributes is clear, and then having the atoms know that they are bonded seems intuitive from a chemical perspective. BUT, maybe not. The circular dependency makes everything more difficult when bonds break, which was what I was wrestling with and why I posted the question. The design is cleaner if the atoms don't know... leave it to the molecules to give that information with, perhaps, eventual extensions to
Forest::Tree graphs of bonding patterns.