Inconsistent naming of specialized functions in Core
For a method meth in class Foo a, when a is specialized to A in Core, the name of the method is sometimes $fFooA_$cmeth, and sometimes something like $fFooA3.
Also, when Foo has a subclass, say Foo a => Bar a, sometimes the name of the method becomes $fBarA_$meth.
So there are multiple different namings of the same method. This can make writing Core plugins more difficult. For example, among other things, it makes it more difficult to detect whether a function is recursive. I've encountered cases where $fFooA_$cmeth is recursive, but its unfolding contains $fFooA3 rather than $fFooA_$cmeth.
Is it possible to make such naming consistent?