In Call by value wordt een kopie van de variabele doorgegeven, terwijl in Call by reference een variabele zelf wordt doorgegeven. In Call by value worden werkelijke en formele argumenten gemaakt op verschillende geheugenlocaties, terwijl in Call by reference daadwerkelijke en formele argumenten worden gemaakt op dezelfde geheugenlocatie.