Question: How to assign parameters to names?

In the below, the example throws an error

restart;
foo := proc(params) 
local names; 
names := lhs~(params)[]; 
#local op(names);
print([names]):
assign(params); 
print(b, c, d); end proc;

foo([b = 2, c = 3, d = 4]);
foo([b = 2, c = 3, d = 4]); #  error because the assignement was done to global names

How to fix that and/or avoid assignements to global names

Please Wait...