I forgot ... for bound methods the equivalence would be super(A,c).m() <=> super(A,C).__superclass__.m(c) <=> B.m(c) where c=C() i.e super automatically bind methods to instances when it is called with the bound form.