In addition to what moritz said, you will notice the problem if you attempt to use $self in display. Since you called it as a sub rather than a method $self will be undefined.
-pete
"Worry is like a rocking chair. It gives you something to do, but it doesn't get you anywhere."