I'm not sure to really understand your point... but
1) you miss a noweb:yes
header argument
2) you can use <<func()>>
to insert the results of evaluating func (instead of the code of func) -- that's here that I'm not sure about what you really want.