On Fri, Feb 02, 2007 at 08:14:53PM +0100, Dr.Ruud wrote: : I would expect : : %hash.exists{$key} :
Except $foo.bar{$key} is interpreted as $foo.bar().{$key}. Things like "exists" and "delete" need to evaluate the key before calling the method in question, not after. : with the shortcut : : %hash.:{$key} : : to test (at run-time) for existance of the element, and expect : : %hash.:exists : : to test (at compile time if possible) for the validity of 'exists', more : like : : %hash.can('exists'); : : %hash.has('exists'); : : %hash.does('exists'); Why would you expect colon to do that? I don't see the prior art... Larry