Boost logo

Proto :

Subject: Re: [proto] Thoughts on traversing proto expressions and reusing grammar
From: Joel Falcou (joel.falcou_at_[hidden])
Date: 2010-10-05 02:49:55


On 05/10/10 08:51, Thomas Heller wrote:
> Having that said, just having "plain" evaluation of phoenix expressions
> seemed to me that it is wasting of what could become possible with the power
> of proto. I want to do more with phoenix expressions, let me remind you that
> phoenix is "C++ in C++" and with that i want to be able to write some cool
> algorithms transforming these proto expressions, introspect these proto
> expression and actively influence the way these phoenix expressions get
> evaluated/optimized/whatever. One application of these custom evaluations
> that came to my mind was constant folding, so i implemented it on top of my
> new prototype. The possibilities are endless: A proper design will enable
> such things as multistage programming: imagine an evaluator which does not
> compute the result, but translate a phoenix expression to a string which can
> be compiled by an openCL/CUDA/shader compiler. Another thing might be auto
> parallelization of phoenix expression (of course, we are far away from that,
> we would need a proper graph library for that). Nevertheless, these were
> some thoughts I had in mind.

Not tha t far, it's basically what's my cohort of tools odes all by
themselves with a clunky code base. If it get streamlined so tha i can
reuse phoenix as a back end, it's just done. Period. We already have the
openCL things working and running and even out performing commercial
product ... We just need a proper code base ;)

> As far as my memories go, we abandoned those prototypes because of several
> reasons, one was that this early prototype was quite complex and not very
> easy to follow, i guess this is true for my attempt to resurrect it. The
> other thing was that people felt like we exposed too much of proto to users
> who wanted to extend phoenix. Last but least, it differed too much from the
> design of phoenix2. See my explanations above on my try to tackle the
> criticism on all these points.

It didn't exposed tha much proto ... unless you consider proto::_ to be
too much :/ And back in the day, I didn't knew making the new phoenix a
clone of the old was a design requirements ;)


Proto list run by eric at boostpro.com