Question: change the arguments of functions

Anyone know a slick way to change the arguments of a function to possibly different things depending on what they are?

 

Let's say I have objects a, b and c.  a and b are of type function and c is of type set.  F is another function object.

 

F(a,b,c) is defined.

 

What I want to do is construct F(g(a),g(b), h(c)).....

 

Ideas?

Please Wait...