On 05/20/14 17:00, Roland Bock wrote:
On 2014-05-20 20:59, Larry Evans wrote:
On 05/18/14 15:41, Louis Dionne wrote:
Dear Boost,
A lot happened during the past week in Aspen; the goal of this message is to summarize insights, changes and feedback received wrt MPL11.
The slides of the presentation are available at [1]. The second part of the presentation is especially relevant to get an overview of the designs considered so far.
Merging the MPL and Fusion -------------------------- After discussing the issue several times during the week, I (and others) think it might be possible to merge Fusion and the MPL into a single library. I am currently trying to write a library that does that. Since this constitutes a large reorientation, I created a new repository which is available at [2]. Those with interest should consider subscribing to the repository to be updated as I make progress.
Iterator-free design -------------------- I was a bit anxious that people would complain about this, but the contrary happened. Nobody complained and some people expressed support. This design aspect will stay as-is.
Request for guinea pigs ----------------------- I am looking for people with hardcore C++1y metaprogramming needs who will be willing to test the library I come up with (MPL11 or MPL + Fusion merge). I also need to see use cases for the library, so please reply even if you are not willing to test.
As mentioned in this post:
https://groups.google.com/forum/?hl=en#!msg/comp.std.c++/_-6X_xZlKlA/-HhvKh5...
One use case is:
3) A guaranteed non-recursive way to access elements of parameter packs
and Doug Gregor (quoting from above post) says:
This is probably the most-requested feature for variadic templates, and it never it made it because we never found a good, unambiguous syntax.
The attached seems to do that. What about adding something like this to the library?
-regards, Larry
Attached is a solution that uses C++14 index sequence (which is recursive, afaik), but is otherwise recursion free. Maybe there is a non-recursive alternative to index_sequence to "eat up" the first N-1 elements?
The code based on the third attachment of this clang bug report http://llvm.org/bugs/show_bug.cgi?id=13263
Regards,
Roland
Thanks very much Roland. I had no idea there was this way to do it. However, I had a lot of trouble understanding how it worked; hence, I added a bunch of comments, as shown in the attached. After adding the comments, I now understand what you mean by "eat up" the first N-1 elements. -regards, Larry