libfn / functional

Extending C++ library for functional programming
ISC License
60 stars 8 forks source link

Rename `invoke` #84

Open Bronek opened 3 months ago

Bronek commented 3 months ago

The implementation of discriminated union relies on std::invoke (i.e. without multi-dispatch) for the purpose of implementing invoke, which demonstrates that we should not try to add multi-dispatch to std::invoke. Basically invoke (with multi-dispatch) has proven to be higher level than std::invoke, hence the former name is wrong (or confusing, at least).

This implies that what we currently call invoke should be called something else, perhaps apply or a new function dispatch. This also applies to member functions.