Call by reference is a way of passing arguments (or 'parameters') to functions
(or 'procedures', or 'subroutines', or whatever your programming language designers chose to call them). Instead of passing the value itself, a reference to the value is passed. As a consequence, the value can be modified from within the subroutine (or 'function', or 'procedure'). Also, if values can be large (like, a 100M blob of binary data), it is significantly cheaper than call by value.