Question: How to unevaluate keyword arguments


     I'm attempting to use unevaluation quotes on a keyword argument within a procedure. For instance, if I have two procedures with the same keyword arguments, I need to unevaluate one to call the other:

foo1 := proc( {param:={}}, $)
end proc:

foo2 := proc( {param:={}}, $)
end proc:


The above code throws the error,

Error, (in foo1) invalid input: too many and/or wrong type of arguments passed to foo2; first unused argument is 1 = 1

which I take to mean that 'param' in foo1 isn't being unevaluated in the call to foo2. What is the correct way to accomplish this?


Please Wait...