Boost logo

Proto :

Subject: Re: [proto] Visitor Design Pattern
From: Eric Niebler (eric_at_[hidden])
Date: 2010-10-24 20:49:51


On 10/24/2010 12:59 AM, Joel de Guzman wrote:
> On 10/24/2010 1:16 PM, Eric Niebler wrote:
>> Now, what to call the traveral/algorithm/action/on thingy. None of those
>> feel right. Maybe if I describe in words what it does, someone can come
>> up with a good name. Given a Proto grammar that has been built with
>> named rules, and a set of actions that can be indexed with those rules,
>> it creates a Proto algorithm. The traversal is fixed, the actions can
>> float. It's called<insert good name here>.
>
> Actor
>
> std::cout << actor<char_terminal, my_actions>()(a) << "\n"; //
> printing char
>
> :-)

Like "visitor", "actor" comes with lots of baggage that we don't want:

  http://en.wikipedia.org/wiki/Actor_model

Besides, as these things define algorithms, a name that's a verb would
be better (std::transform, std::accumulate, etc. are verbs).

How about "evaluate":

  proto::evaluate<char_terminal, my_actions>()(a);

?

-- 
Eric Niebler
BoostPro Computing
http://www.boostpro.com

Proto list run by eric at boostpro.com