Blog Post: Beating std::visit Without Really Trying
j at j.nl
Sat Oct 5 08:50:21 UTC 2019
On Saturday, 5 October 2019 at 02:59:58 UTC, Paul Backus wrote:
> I was curious how C++17's std::variant compared to the options
> we have in D, like Algebraic and SumType, so I did a simple
> comparison of the generated assembly for each of them. You can
> read about it at the link below. And as you can probably guess
> from the title, D comes out ahead, in the end.
> This is my first attempt at sharing something like this, so any
> comment or feedback is very much appreciated!
It'd be interesting if you could investigate the case of
non-trivial lambdas, where inlining the lambdas is not
profitable. Perhaps easiest if you call opaque (declaration-only)
functions in the visit list.
- SumType is great
- std::visit is OK'ish
- D Algebraic is terrible
Do you agree?
More information about the Digitalmars-d-announce