Ruby вообще не поддерживает передачу по ссылке. Все является объектом, и ссылки на эти объекты всегда передаются по значению. На самом деле, в вашем примере вы передаете копию ссылки на Fixnum
Объект по значению.
Проблема с вашим кодом заключается в том, что x += 1
не изменяет переданный Fixnum
объект, а создает совершенно новый и независимый объект.
Я думаю, программисты на Java будут называть Fixnum
объекты неизменными .