package X; sub A { " base class implementation" } sub B { " base class implementation" } 1; package Y; @ISA (X); # Let's use A() from the base class sub B { "local implementation" } #### sub Y::A { unless ($getopt{special_case}) { $self->SUPER::A(); return; } # do the stuff based on the command line arg if # the special case was chosen from the cmd line. }