Pass by reference or pass by value? | When learning a new programming language, one of the possible roadblocks you might encounter is the question whether the language is, by default, *pass-by-value or pass-by-reference*.


So here is my question to all of you, in your favorite language, *how* is it actually done? And what are the *possible pitfalls*?


Your favorite language can, of course, be anything you have ever played with: [popular](http://www.ruby-lang.org/en/), [obscure](http://www.devtopics.com/a-obscure-programming-language-of-the-month/), [esoteric](http://en.wikipedia.org/wiki/Brainfuck), [new](http://www.nvidia.com/object/cuda_get.html), [old](http://en.wikipedia.org/wiki/FORTRAN)...