AMDG On 02/07/2018 01:50 PM, Brook Milligan via Boost wrote:
<snip> - Is it appropriate for a library to require users to reimplement something as intricate as this recursion in order to support a use case like that?
- Is it appropriate for Yap to have something like evaluate_with_context(eval,context,…) that would implement a recursion similar to evaluate() but allow a context argument to control the evaluation at appropriate customization points. Note, the variadic part is for placeholders, which are supported by evaluate(), and not really part of the issue. Again, from my experience it seems that implementing this once correctly in the library would save much pain on the users’ part.
I haven't actually started looking at YAP yet, but I think the correct way to handle this for YAP to expose a transform that does the same as evaluate, which can be selectively overridden by a derived transform. In Christ, Steven Watanabe