It's called overloading, and it's found in amongst others C++ and Java too. It's not surprising at all. And you don't just have to use different numbers of parameters, you could just use different ...