Whether or not to use code refs depends on what you are doing. If you use code refs your dispatch will ignore inheritance. If you the dynamic method lookup that I posted, your dispatch will allow subclasses to usefully override the method that you are dispatching to.