On Thu, 2017-09-21 at 13:10 -0700, Robert Ramey via Boost wrote:
On 9/21/17 12:23 PM, paul via Boost wrote:
- What is your evaluation of the implementation?
I think there are too many macros internally, but I think its mostly to work around compilers. So its about average for a boost library.
Well macros are used to help improve compatibility, and improve compile- time performance where possible(ie using intrinsics over type traits).
Hmmm - I didn't catch this. I had presumed that macros were used because there was no other way to implement the required functionality. I don't think that saving a little bit of compile time is a good justification for defining a macro.
Its about 50-60% faster on clang. Hana uses similar intrinsics where possible. Ideally, it would be nice to have these in a separate library, so these macros can be easily used in more libraries. .