
On 9/27/07, Mathias Gaunard <mathias.gaunard@etu.u-bordeaux1.fr> wrote:
Gottlob Frege wrote:
I'm not sure if these polymorphic value objects are the same, but maybe you should look at Adobe's open source poly object: http://opensource.adobe.com/group__poly__related.html
It's quite different. Mine allow to use objects of type Derived as if they were variables of type Base. Which is just OOP.
From what I've read it seems Adobe ones allows to generate an interface on the fly from a C++0x and use it with types that comply to that interface, without any relation to inheritance or anything. That's more like "dynamic any".
-- Sorry if the research papers cited above misled you as to the capabilities Adobe poly<> library. Unfortunately, the end-user documentation is not yet complete. I hope to rectify this soon. In the meantime, I can set the record straight with respect to the statements that you made above. The poly<> library that currently ships is written in standard C++. No C++ '0x features are required--it compiles under VC8, gcc-4.20, etc. It does not require language support for Concepts. Poly<> supports the wrapping of specific interfaces. In fact, it could be viewed as a generalization of the any library, allowing any<> to be parametrized with an arbitrary "interface". Although poly<> shuns of OOP, it does provide for regular, polymorphic, value-types, without slicing (including support for downcasting, etc.). - Mat