Why is a String result type necessary?