Multiple dispatch in Python
Multiple dispatch (aka multimethods, generic functions, and function overloading) is choosing which among several function bodies to run, depending upon the arguments of a call.
There's been discussion of adding multimethods to python core for several years, multiple PEPs, several libraries, some widespread production use, and a bit of internal use in current core.
There doesn't seem to be anywhere on the web which collects information on python multiple dispatch, nor which compares the available libraries' features and performance. This page is intended to grow into that.