Determining the methods of different kinds of objects to invoke at runtime rather than at compile-time.
$1, meaning first match against first group/(\S+)(\S+),(\S+)/ corresponding matched content is print $1 $2 $3if(xx =~ xx) do sth else die$&: the part actually matched$\backslash: the part before matched$': the part after matched