Boost logo

Boost :

From: Stefan Roiser (stefan.roiser_at_[hidden])
Date: 2006-02-06 03:29:51


On 5 Feb 2006, at 03:59, Stefan Seefeld wrote:

> Edward Diener wrote:
>
>> What does Synopsis have that Reflex does not as far as C++
>> reflection is
>> concerned ? What reflection problem are you trying to solve with
>> whatever Synopsis can do ?
>
> Synopsis provides a C++ parser together with source-code
> representations
> (such as parse tree, symbol table, etc.) exposed as C++ and python
> APIs
> (deployed as C++ libraries and python modules).
> As such it isn't exactly comparable to Reflex itself (IIUC), but
> instead,
> to the compiler frontend used by Reflex (i.e. gccxml).

I agree with you. The difference between synopsis and gccxml is the
place where you intercept and retrieve the information.

> The only reflection that has been in active use for a couple of
> years is
> a documentation extraction pipeline

Please note, the discussion about reflection so far was only about
introspection of C++, but I think reflection is at least three
different parts, the other two being

- Interaction, to interact with the introspected information (e.g.
construct a type, invoke a function, get/set data members) from the
meta level.
- Modification, to alter the introspected information at runtime
(e.g. add a function member dynamically, eg. which is defined in python)

-- 
Stefan Roiser
CERN, PH Department
CH - 1211 Geneva 23
Mob:+41 76 487 5334
Tel:+41 22 767 4838
Fax:+41 22 767 9425

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