function sqr (by_value)
{
by_value = by_value * by_value;
return by_value;
}
function sqr2(by_ref&)
{
by_ref = by_ref * by_ref;
return by_ref;
}
x = 2;
y = sqr (x);
fprintf (stdout, x, " ", y, "\n"); /* 2 4, x didn't change*/
y = sqr 2("x");
fprintf (stdout, x, " ", y, "\n"); /* 4 4, x did change*/