From: David Abrahams (dave_at_[hidden])
Date: 2004-09-30 07:20:37
Stefan Seefeld <seefeld_at_[hidden]> writes:
> Hi there,
> The Synopsis project is looking for volunteers to enhance
> its C++ parser and source code introspection facilities.
> The Synopsis project (http://synopsis.fresco.org) started
> some years ago with the goal to provide a more robust
> and flexible alternative to code documentation tools such
> as doxygen and javadoc. As it evolved, it became clear that
> the infrastructure could serve in a much broader context,
> and so the current goal is to provide a framework for
> code introspection. Some obvious use cases include semi-automatic
> language-binding generation (such as done by boost.python's pyste)
> as well as reverse engineering and refactoring tools.
> Synopsis with its current code base is able to parse
> most of boost (as I posted earlier I have been working with
> David Abrahams to generate a reference manual for boost.python),
> though there are some C++ constructs it can not yet fully
> My goal is to provide a fully standard compliant C++ parser
> with C++ and python APIs to access the processing pipeline
> as well as the abstract syntax tree for maximum power and flexibility.
Stefan has recently been trying to get compile-time constants from
sizeof() into the parser. As he knows, this is going to mean handling
such things as template instantiation and overload resolution. This
is a great opportunity to learn more about how C++ works and to create
a compiler platform that's actually usable by C++ programmers for
prototyping new features -- one of the major obstacles in C++
standardization is that the source for the only open-source C++
compiler has a steep learning curve.
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk