Sort of. But you can't statically decide it. In fact, really the only way to do it is with a GC (or ref. counting, etc.). You can't know until runtime when a node will need to be freed.
And my point still stands. The GC allows you to do things you otherwise couldn't.
And my point still stands. The GC allows you to do things you otherwise couldn't.