There are a number of specializations of CALL_FUNCTION that make sense:
- Calls to a Python function where the arguments and parameters match exactly.
- Calls to a Python function with keyword arguments, or defaults, when the argument shuffle can be pre-computed.
- Calls to builtin functions.
- Calls to specific builtin functions, specifically
len and instance.
- Calls to
type with a single argument.
- Instantiation of a "normal" class, that is a class that does not redefine
__new__ and whose metaclass is type.