Something strange is happening when the graph is dynamically altered that seems to prevent nodes (or graphs) from being garbage collected. Adding a **del** method to differentiable that removes links to a node from its parents might help solve this.