+1

Just a thought. As for me `lambda` looks a bit better because callback args & kwargs would result in cumbersome `__init__` signature or could clash with base WeakSet attributes. What do you think?