sub makeUserSelectedObjectDance { # ENVIRONMENT DEPENDENT!!! # any class in @INC that has a dance method will be accepted my ($sClass) = @_; return if ! ($sClass->can('dance')); my $oDancer = $sClass->new(); $oDancer->dance(); return $oSomething; } #### sub applyUserSelectedActionToUserSelectedTarget { # ENVIRONMENT DEPENDENT!!! - relative to codebase size and contents # number of valid parings of class and method can be quite large # in a large codebase my ($sClass, $sMethod) = @_; my $crMethod = $sClass->can($sMethod); return if ! $crMethod; my $oSomething = $sClass->new(); $oSomething->$crMethod(); return $oSomething; }