Ruby includes several built-in classes to represent numbers:
Numeric
Integer
Fixnum # 1
Bignum # 10000000000000000000
Float # 1.0
Complex # (1+0i)
Rational # Rational(2, 3) == 2/3
BigDecimal # not loaded by default
The most common are:
Fixnum to represent, for instance positive and negative integersFloat to represent floating point numbersBigDecimal is the only one not loaded by default. You can load it with:
require "bigdecimal"
Note that in ruby 2.4+, Fixnum and Bignum are unified; all integers are now just members of the Integer class. For backwards compatibility, Fixnum == Bignum == Integer.