You can go purist on this and say ruby is a special case of "pass by the value of the reference" but it misses the point. Just think of everything in ruby being an object
foo(14) passes a reference to an integer object with a value of 14. There's some stuff that goes on under the covers, so you don't end up with 100's of 14 objects, but from an intent point of view most of the time you can just forget the concept.