Вы не можете определить синглтон для Fixnum в ruby, потому что на самом деле существует только один из них (для каждого Fixnum). Например (в IRB):
1.object_id
=> 3
1.object_id
=>3
В отличие от строк, например:
"panda".object_id
=> 78405050
"panda".object_id
=> 78383110
Очевидно, что конкретные цифры будут различаться в вашей системе.
Это имеет смысл, поскольку нет никакого способа, чтобы конкретный «экземпляр» 73 отличался от любого другого «экземпляра» 73 (и я свободно использую слово «экземпляр», потому что это на самом деле не экземпляр - они все один и тот же объект).
http://ruby -doc.org / ядро-1.9.3 / Fixnum.html