> > This is orthogonal to typed lexicals. > > But not orthogonal to PREPARE. > > > Typed lexicals aren't enough on their own. Specifically, they won't stop > > type-incompatible assignments that introduce subtle bugs: > > > > my Dog $snoopy; > > PREPARE ties $snoopy to Dog::Tie... > > > $snoopy = Alligator->new(); > > Dog::Tie::STORE catches the problem. Okay. TMTOWTDI. The advantage of Class::ifiedVars is Laziness: you don't need to set up the Dog::Tie class (and the Cat::Tie class, and the Goldfish::Tie class...). Oh, and it works just as well on package variables. Damian