Dave Whipp
Thu, 21 Jul 2005 10:56:03 -0700
"TSa (Thomas Sandlaß)" wrote:
Here your expectations might be disappointed, sorry. The non-symbolic form $*Main::foo = 'bar' creates code that makes sure that the lhs results in a proper scalar container. The symbolic form might not be so nice and return undef! Then undef = 'bar' of course let's your program die.
When something knows that it is being evaluated in lvalue context, it should probably return something like "undef but autovifify:{...}". The assignment operator could then check for the "autovivify" property when its LHS is undefined.