If the server won't convert my data type to hold fractions, what happens when I get the sum of something too big to be held?
The server is smart enough to promote the data type to the next larger data type to hold the result of an aggregate or calculation.
Functions look really interesting, but it seems like a lot of work to type in all that stuff just for a simple result set.
Functions are frequently used in the production of stored procedures and triggers. They enable you to provide consistent code for particular actions that will be used in many places in an application.