hof
hof copied to clipboard
Higher-order functions for c++
An alternative to declaring functions using the `FIT_STATIC_LAMBDA_FUNCTION` is to use the factory pattern in C++14: ``` cpp struct lambda_factor { auto operator*() const { return [] { ... };...
The type of variable created by `FIT_STATIC_FUNCTION` or `FIT_STATIC_LAMBDA_FUNCTION` could be different. Perhaps a template alias such as `static_function` or `static_lambda_function` can be used by the user to know the...
I thought of a potential Fit feature today when browsing [this r/cpp thread](https://www.reddit.com/r/cpp/comments/4b7zfe/a_possible_c_standard_proposal_on_overloading/). It would be nice sometimes to write the same function for all function qualifier overloads, especially for...
It is not clear to me from http://pfultz2.github.io/Fit/doc/html/implicit/index.html the semantics of implicit as the T is not part of the implicit parameters ``` assert(T(implicit()(xs...)) == F()(xs...)); ``` IIUC, what you...
The example in http://pfultz2.github.io/Fit/doc/html/lazy/index.html should show the consexpr ability
The main reason for inheritance is to take advantage of EBO. So it might be best to only inherit when classes are empty. This is related to issue #129, and...
The decorator created by the decorate adaptor should allow for constraints and multiple parameters
One way to do this is to have a second function passed to `decorate`, which will construct or pack the data. It can also be used to constrain the decorator.
There are two variants of fold, left associative versus right. What about naming them `fold_left` and `fold_right`? Given an adaptor that results in a variadic function as `compress` compress:: F...
I'm looking at `flip` right now, but this also applies to basically all the rest of the library. The documentation says > **Synopsis** > > ``` c++ > template >...