The strongtyping gem is a Ruby library that provides type checking and method overloading.
Ryan Pavlik, Daniel Berger
gem "strongtyping", "~> 2.0.7"