Overloadable functions with tuples - why can't compiler do that?

I don't think it's because functions cannot be overloaded.

It becomes as issue when you try to use API that you already know and find out that instead of calling initMouseEvent you now have to call
init_mouse_event_with_can_bubble_arg_and_cancelable_arg_and_view_arg_and_detail_arg_and_screen_x_arg_and_screen_y_arg_and_client_x_arg_and_client_y_arg_and_ctrl_key_arg_and_alt_key_arg_and_shift_key_arg_and_meta_key_arg_and_button_arg_and_related_target_arg.

Actually it's a problem even if you want to use said API and you haven't used it before, from other languages where overloading is a thing.

In an ideal world where everything is written in Rust it may not be a big deal. In a real world… it's a problem.