A very interesting invention... does it work with parameter defaults? Oh, and IIRC, the word you're looking for is "Function overloading" not "polymorphism". Polymorphism refers to the ability to have completely different objects that can be used the same way, which Python always has.