In this second review, those who choose to participate should be as
rigorous as they'd be in any other review, but are also encouraged to voice
whether or not the concerns from March of 2016 were addressed.
The following is a brief description of the library from its author:
Fit is a header-only C++11/C++14 library that provides utilities for
functions and function objects, which can solve many problems with much
simpler constructs than whats traditionally been done with metaprogramming.
- Modern: Fit takes advantages of modern C++11/C++14 features. It
support both constexpr initialization and constexpr evaluation of
functions. It takes advantage of type deduction, varidiac templates, and
perfect forwarding to provide a simple and modern interface.
- Relevant: Fit provides utilities for functions and does not try to
implement a functional language in C++. As such, Fit solves many problems
relevant to C++ programmers, including initialization of function objects
and lambdas, overloading with ordering, improved return type deduction, and
- Lightweight: Fit builds simple lightweight abstraction on top of
function objects. It does not require subscribing to an entire framework.
Just use the parts you need.
Fit is divided into three components:
- Function Adaptors and Decorators: These enhance functions with
- Functions: These return functions that achieve a specific purpose.
- Utilities: These are general utilities that are useful when defining
or using functions.
On older compilers such as gcc 4.6 and gcc 4.7, noexcept is not used due to
many bugs in the implementation. Also, most compilers don’t support
deducing noexcept with member function pointers. Only newer versions of
gcc(4.9 and later) support this.
Please take this time to become familiar with the Fit library before the
review takes place and feel free to respond in this thread with any
additional questions related to the library or its review. Thanks!