Because you're going to play nice and always call the getters and setters instead of reaching into the data structure, getters and setters are called frequently. To save a teeny-tiny bit of time, you might see these getters and setters written as:
## in Animal sub color { $_[0]->{Color} } sub set_color { $_[0]->{Color} = $_[1]; }
Here's an alternate way to access the arguments: $_[0] is used in place, rather than with a shift. Functionally, this example is identical to the previous implementation, but it's slightly faster, at the expense of some ugliness.
Copyright © 2003 O'Reilly & Associates. All rights reserved.