The obvious usage: feature testing. For example, if a Tk component uses an Entry widget and optionally (if installed) a HistEntry widget, then adding to the entry's history would be done with:
if ($entry->can("historyAdd")) {
$entry->historyAdd(...);
}
Similar if a module adds a feature (speak: method) in a later version, but you don't know when exactly and won't hardcode the module's version in your code.