note runrig <blockquote><em>But the user has no way at all of accessing or modifying your data fields unless you've defined an accessor method.</em></blockquote> Not quite. You can still go "under the hood" from outside of the module:<code> my $person = new Person; $person->name("Foo Bar"); $person->age(22); # No 'toes' method $person->("toes", 12); print $person->name, " is ", $person->age, " years old.\n"; print "And has ", $person->("toes"), " toes\n"; </code> 8251 8251