function swap3 (a,b)
if nargin ~=2
    error('swap1 requires two arguments')
end
temp=b;
b=a;
a=temp;
disp('swap completed');
whos
evalin('caller',['surprise=' '2' '+' '2']) % need quotes to delay evaluation of command!!!
disp('evalin completed');
whos
disp('Returning from swap3')