Polymorphism, dynamic typing and dynamic binding