A couple of questions: 1) It seems to be that this library only applies to function objects. Is this impression correct? I get this impression from the "getting started" and other material and I'm fine with this. But when I go to the reference for is_callable I find: "The is_callable metafunction checks if the function is callable with certain parameters." which seems to suggest that this meta function would work as expected when passed a pointer to a function. If it's to apply only to function objects, I would expect the above to read: "The is_callable metafunction checks if the function object is callable with certain parameters." 2) I wonder about some names. In some cases it seems that the library provides some C++17 functionality under a different name: is_callable ?-> std::is_invocable http://en.cppreference.com/w/cpp/utility/functional/invoke apply ?-> std::invoke http://en.cppreference.com/w/cpp/utility/functional/invoke