Why parameter validation in general is inevitable despite exact type specification to fully control code correctness