Correct Answer : scoping rules
Explanation : This function never actually uses the argument b, so calling f(2) will not produce an error because the 2 gets positionally matched to a.