1. A computer-readable storage device, comprising: a software development application for providing a statically typed software development language that implements a public arithmetic class having an object model that includes: a public generic interface that defines basic arithmetic operations, the public generic interface being implementable by a plurality of numeric types, thereby allowing basic arithmetic operations to be performed on the plurality of numeric types, the public generic interface being operable to change to a second one of the numeric types in response to a determination that a result of an operation being performed on a first one of the numeric types would not fit within a range supported by the first one of the numeric types; a public arithmetic descriptor class that describes numeric properties of each of the plurality of numeric types implementing the public generic interface; and an arithmetic capabilities enumeration used by the public arithmetic descriptor class that includes mathematical properties that can be retrieved for each of the plurality of numeric types implementing the public generic interface.
1. A computer-readable storage device, comprising: a software development application for providing a statically typed software development language that implements a public arithmetic class having an object model that includes: a public generic interface that defines basic arithmetic operations, the public generic interface being implementable by a plurality of numeric types, thereby allowing basic arithmetic operations to be performed on the plurality of numeric types, the public generic interface being operable to change to a second one of the numeric types in response to a determination that a result of an operation being performed on a first one of the numeric types would not fit within a range supported by the first one of the numeric types; a public arithmetic descriptor class that describes numeric properties of each of the plurality of numeric types implementing the public generic interface; and an arithmetic capabilities enumeration used by the public arithmetic descriptor class that includes mathematical properties that can be retrieved for each of the plurality of numeric types implementing the public generic interface. 7. The computer-readable storage device of claim 1 , wherein support is provided to allow common numeric operations that can be performed on any of the numeric types to be packaged together.