Boost logo

Boost :

From: John Phillips (phillips_at_[hidden])
Date: 2008-03-28 17:00:59


Hartmut Kaiser wrote:
> Hi all,
>
> this is just a gentle reminder for all intending to write a Proto review to
> finish it really soon.
>
> ... <snip>
>
> Regards Hartmut
> Review manager
>
>
>

   I unfortunately don't have time right now to write the carefully
crafted and detailed review that the library deserves. However,

**I am strongly in favor of including the library in boost.**

   Short review:

   I have spent about 15 hours with the library and documentation spread
out over the past month or so. I make no claim to being an expert in the
field, but I have fiddled with expression templates for a couple of
years because I find the potential of them very seductive. I have
compiled a few of the examples and considered how to move some of my
work into using proto.

   I am very happy with the basic structure and implementation of the
library. Studying it helped clarify some things about how to use
expression templates that were still muddy for me, and good abstractions
usually accomplish that.

   Because the library is so large and the potential for it so vast, it
is not perfect in implementation or documentation, but I have nothing to
point out that hasn't already been in other reviews as things to fix.

   The biggest thing I would like to see is in the realm of
documentation. What I would like isn't really appropriate for the
library documentation, so I'll add my voice to those who think proto and
the techniques it embodies are worthy of a book. Ideally, Eric will be a
part of writing this book, but I think it will be a massive undertaking
to do it well so I suggest whomever decides to tackle it looks for
appropriate co-authors.

   The book plus library should start with toy examples and build up to
a mental framework for how to design DSL's and how to use proto to
implement them. There are some other books (such as Dave and Aleksey's
MPL book or C. and E.'s Generative Programming) that look at parts of
this, but a concrete tool such as proto can be used to structure the
discussion and make it more accessible to a larger body of programmers.
Without a reference off this sort, I am afraid that 90% of the
programming projects that could greatly benefit from this library won't
ever use it, and I think the library and the developers who don't yet
know what they're missing deserve better.

   Sorry once again that I'm too pressed for time to write a better
review. Thanks to Eric for the library and the other reviewers for
minding the details I don't have time to mind right now.

                        John Phillips


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk