ポインタは、ガベージコレクタが循環参照を見つけるために使われます。関数は循環参照になり得ないメンバも返します。いう決まった名前の引数を持つことを要求します。検出した循環しているゴミの循環参照を壊すために用いられます。関数が連携して、全ての循環参照を破壊しなければなりません。関数を提供するべきです。タプルだけで構成された循環参照がみつかることは無いからです。関数だけで、タプルを含むどんな循環参照も必ず破壊できることになります。実装を避ける良い理由はめったにありません。整数のような、循環参照に含むことのできないオブジェクトをクリアする必要はありません。関数を実行するようにすると実装が楽になるでしょう。