Do we really need to deprecate this? Most of the functions are implemented this way, and it's way handier than having to register a factory every time...