On Sunday, February 28, 2016 at 6:12:22 PM UTC-6, Matt Calabrese wrote:
On Sat, Feb 27, 2016 at 8:16 AM, Vicente J. Botet Escriba < vicent...@wanadoo.fr javascript:> wrote:
Dear Boost community,
The formal review of Paul Fultz II's Fit library starts on Wednesday, 2nd March and ends on 13th March.
I'm looking through the documentation right now and it looks great, though I have not used the library yet. Some suggestions -- I think the docs really need a more formal motivation/tutorial section at the very front. It starts with *what* the library is in very general terms, and jumps quickly into what the library can do, but I think a bit of a narrative describing a motivating example would help sell it to those who are not already more familiar with the *why*. This is done a little bit, scattered throughout the docs, but I find that the best docs usually tell something of a story. This is just a request.
Do you have an idea of what kind of problem would make a good motivating example for this library? The quick start guide moves quickly so people can quickly see what the library can do. However, a more in-depth turtorial could be useful as well. I just need to think of a larger problem that stays focus on the functional aspect.
I suggest not using the name FunctionObject for something that is only callable with a const object. This is a little more specific that what most people refer to as a function object in C++ and may cause confusion.
Good point. This would also apply to Callable as well.
I'm fairly certain that the reinterpret casting involved with BOOST_FIT_STATIC_LAMBDA is UB.
Not really, since the objects are empty, there is no data access. I have a static assert to guard against this restriction. Also, on gcc and clang with BOOST_FIT_STATIC_LAMBDA_FUNCTION, the reinterpret cast happens at compile- time. Now there could be an insane implementation where this doesn't work(perhaps the lambdas are not empty for some strange reason), which the library would have to apply a different technique to make it work. However, this is quite unlikely considering that C++ will probably get constexpr lambdas and inline variables in the future. Paul