So, there I am writing an autoloader to do some delegation and I want it to be stack transparent, so I try: ... local $_[0] = $_[0]->{responder}; goto &{$_[0]->can($method)} ... And guess what appears to happen. The goto throws away the calling stack frame, which means that the value of $_[0] that got localized there gets thrown away too, which means it doesn't bloody work. How very annoying. Ah well, all part of life's rich pattern. Thanks for listening. -- Piers