The great thing about parameter validation is that there are people who say that only idiots would have it, and other people who say that only idiots wouldn't.
Back in the old days, Windows didn't do parameter validation. If you called a function with an invalid window handle, your application crashed. If you called a function with an invalid...