
AMDG Eric Niebler wrote:
Steven Watanabe wrote:
AMDG
Eric Niebler wrote:
5) You can override an expression's domain with "proto::as_expr<Domain>(expr)". This gives a way to mix expressions from different domains in the same expression.
I'm not sure that's enough. I can imagine wanting one domain to treat expressions in another domain as terminals. Specifically, I am thinking of using lambda in another domain that expects function objects.
Could you show some pseudo-code for your DSEL? What support from Proto do you think you'll need?
Sorry. I should have said that I can see the possibility of using lambda... It may be sufficient to wrap such expressions in lit(). (Is there any issue with putting an expr in a terminal?) I'll try to think of something more concrete. In Christ, Steven Watanabe