
AMDG I've just glanced over the main page of the documentation and I had a few comments: - _tuple<Person, Car, City> Historically names beginning with _ are used for placeholders. i.e. in Boost.Bind/Lambda/Phoenix/Parameter. Is there a good reason not to call it tuple? - // BOOST_HANA_RUNTIME_CHECK is equivalent to assert In that case, what is the point of using it instead of assert? I think you should probably avoid using these constructs in the user documentation of other parts of the library. It's just a distraction, so it's better to rely on standard components, which users probably already understand. - Is there a reason for using length instead of size, which would be more idiomatic in C++? - Amphibian algorithms!!!??? Okay, I guess the name is kind of clever. I can't say that I really like it, though. - foldl/foldr. I really hate these names. I'd prefer fold/reverse_fold, but even fold_left/fold_right would be better. - count is the equivalent of std::count_if, not std::count. - find/lookup should be find_if/find - In general I would expect any algorithm that takes a single element for comparison to have both f and f_if forms. - sort(predicate): shouldn't this be sort(sequence)? In Christ, Steven Watanabe