Date: Sat, 17 Feb 2024 22:03:45 +0100
Hello everyone,
The differences can be quickly summarized as follows :
- the reflection API is typed
- the reflection domain includes statements and expressions (so we're able
to traverse a function's body, for example)
- anything that can be reflected, can be constructed/injected. so we can
create expressions, statements, or declarations. Our use cases
cover operators generation/interface generation (member
functions synthesis), symbolic differentiation (expressions traversal and
synthesis), string matching (statements synthesis), and static analysis
(statements/expressions traversal, inspection of functions parameters),
among other things.
- we can emit diagnostics at compile-time, and transform value of builtin
types to text (we've also constexpr-ised std::format to help emit
diagnostics)
This is of course a very brief summary of the differences, and they will
hopefully be better demonstrated by the articles.
-Jean-Baptiste
Le ven. 16 févr. 2024 à 20:57, David Sankel via SG7 <sg7_at_[hidden]>
a écrit :
> Thanks for sending this out Hana. It would be great if someone could
> succinctly summarize how this differs from what was already forwarded to
> EWG.
>
> On Tue, Feb 13, 2024 at 11:44 AM Hana Dusíková via SG7 <
> sg7_at_[hidden]> wrote:
>
>> Hello SG7!
>>
>> Jean-Baptiste Vallon Hoarau and Joel Falcou recently contacted me as they
>> work on on a prototype of reflection (different than P2996 as they started
>> a while ago) and it's an interesting design. They just announced a blogpost
>> about it.
>>
>> Hana
>>
>> Code Reckons
>> <https://www.codereckons.com/articles/65cbc0511318c3d21078737b>
>> codereckons.com
>> <https://www.codereckons.com/articles/65cbc0511318c3d21078737b>
>> [image: favicon.ico]
>> <https://www.codereckons.com/articles/65cbc0511318c3d21078737b>
>> <https://www.codereckons.com/articles/65cbc0511318c3d21078737b>
>>
>> --
>> SG7 mailing list
>> SG7_at_[hidden]
>> https://lists.isocpp.org/mailman/listinfo.cgi/sg7
>>
> --
> SG7 mailing list
> SG7_at_[hidden]
> https://lists.isocpp.org/mailman/listinfo.cgi/sg7
>
The differences can be quickly summarized as follows :
- the reflection API is typed
- the reflection domain includes statements and expressions (so we're able
to traverse a function's body, for example)
- anything that can be reflected, can be constructed/injected. so we can
create expressions, statements, or declarations. Our use cases
cover operators generation/interface generation (member
functions synthesis), symbolic differentiation (expressions traversal and
synthesis), string matching (statements synthesis), and static analysis
(statements/expressions traversal, inspection of functions parameters),
among other things.
- we can emit diagnostics at compile-time, and transform value of builtin
types to text (we've also constexpr-ised std::format to help emit
diagnostics)
This is of course a very brief summary of the differences, and they will
hopefully be better demonstrated by the articles.
-Jean-Baptiste
Le ven. 16 févr. 2024 à 20:57, David Sankel via SG7 <sg7_at_[hidden]>
a écrit :
> Thanks for sending this out Hana. It would be great if someone could
> succinctly summarize how this differs from what was already forwarded to
> EWG.
>
> On Tue, Feb 13, 2024 at 11:44 AM Hana Dusíková via SG7 <
> sg7_at_[hidden]> wrote:
>
>> Hello SG7!
>>
>> Jean-Baptiste Vallon Hoarau and Joel Falcou recently contacted me as they
>> work on on a prototype of reflection (different than P2996 as they started
>> a while ago) and it's an interesting design. They just announced a blogpost
>> about it.
>>
>> Hana
>>
>> Code Reckons
>> <https://www.codereckons.com/articles/65cbc0511318c3d21078737b>
>> codereckons.com
>> <https://www.codereckons.com/articles/65cbc0511318c3d21078737b>
>> [image: favicon.ico]
>> <https://www.codereckons.com/articles/65cbc0511318c3d21078737b>
>> <https://www.codereckons.com/articles/65cbc0511318c3d21078737b>
>>
>> --
>> SG7 mailing list
>> SG7_at_[hidden]
>> https://lists.isocpp.org/mailman/listinfo.cgi/sg7
>>
> --
> SG7 mailing list
> SG7_at_[hidden]
> https://lists.isocpp.org/mailman/listinfo.cgi/sg7
>
Received on 2024-02-17 21:03:59