On 9/22/2010 1:22 AM, Thomas Heller wrote:
> Let me add something:
> 
> The more I thought i about the problem, the more i thought that this would 
> be a perfect use case for sub domains! So i tried to hack something 
> together:

Interesting thought.

<snip>
> 
> This seems to be exactly what Roland wanted to achieve in the first place.
> However, it looks like this design just overcomplicates stuff because we 
> have to specify the "addition" in our base domain anyway ...

Yeah, it's rather complicated. Especially considering that lone
terminals really are valid in the super-domain, so the grammar of the
super-domain should simply reflect that.

> Initially i was under the impression that this wasn't needed, but it seems 
> that proto cannot deduce something like:
> 
> lhs_expression OP rhs_expression results in expression
> 
> So the question is: is it reasonable to add features like that?
> It seems valuable to me.

Right, there's potentially a problem in Proto here. If RHS and LHS are
in different domains, a common super-domain is deduced first, and then
Proto checks to see if the LHS and RHS conform to that common domain.
That doesn't seem right. Can you open a ticket?

> If I omit the addition in the my_domain grammar, I could have defined the 
> operator== myself. However I think that somehow defeats the purpose of 
> proto, doesn't it?

Yes, you shouldn't have to define your own operators. It's tricky business.

-- 
Eric Niebler
BoostPro Computing
http://www.boostpro.com
_______________________________________________
proto mailing list
proto@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/proto

Reply via email to