I don't disagree with this, I just want to raise it as a point of discussion. There could be some routines (in fact probably quite a lot) where it would be logical for the output unit to be dependant on the input. 

e.g. input an angle in degrees you want degrees out not radians etc.