I see, this was to remove the short-lived object problem. I think I'd rather have that problem than immediately breaking down the abstraction.