Ruby being weakly typed, it is only at the time of its first allocation that *Ruby* knows the type of a numeric variable. *Ruby* possesses 5 types of numeric objects:

- Integers
- Fractions (quotients of two integers)
- Real numbers (really they are decimal numbers only)
- Decimal numbers with many decimal places (
*Big_Num*) - and complex numbers which are not really numbers because they cannot be compared