>>One thing would be nice to have, and JimN is right about it - .Release should return .f. if it fails because reference count is not zero when it attempts to release
>
>But Release doesn't fail. It always releases the memvar given as its argument (which has the side effect of decrementing the reference count of the object the memvar references).
>
>However, even if that point is considered pedantic <s>, what would you do with the result? And if you really do need to know whether an object (not the memvar referencing it) has been released, you can simply use Type().
Right - the better way would be to have .RefCount exposed, so I could check a reference to see if it's the last one _before_ I release it. Would be a nice thing to have, at least in development.