In my opinion it would be nice if this could be done directly, :
f1(a1; a2=1, a3="a") # a4, a5, ...
f2(b1; b2='k', b3=2.0) # b4, b5, ...
function f(x, y, z, a1, b1; kwargs...)
# code
f1(a1; kwargs...)
# code
f2(b1; kwargs...)
#code
end
where f1 and f2 have different kwargs, and each function automatically chooses only compatible kwargs.
Wrapping of functions would be greatly simplified.
Currently doing something like this is a bit complicated, and it has to be done by hand for each function called in f.
What do you think about it?