
On the other hand, having round with a second parameter to return a Decimal would be quite usefull. I can't see a way of changing the type returned by the built-in round without crashing half the World --- but maybe it would be possible to deprecate only the two-parameter form of the built-in round, and add a decimal.round Decimal factory?
On second thought, the idea of "namespaces" within the interpreter (like Tim Peters was suggesting I think in the doctest module) could put some order to built-ins and globals within the interpreter. round(), hex() and others could be in the namespace "Numbers" (Named by their associated type), similarly for the other type-specific builtins. Create a keyword "expose" to dump a particular namespace into the global scope when you don't want to type "Numbers.round(f)". Thoughts? markj