Class-C3 is a speed bottleneck in some uses, most notably DBIx::Class. Reimplementing the expensive part of the algorithm leads to a notable speed improvement.