AbstractSubclass is a class that provides additional services based on the services the potential super/parent class provides.
It is abstract in the sense that there are abstract requirements of what the super/parent class needs to implement.
See Also MixIn
A simple example would be the EnumerableModule in RubyLanguage in which a class provides an InternalIterator method called 'each', then by including/mixing in the EnumerableModule, the original class will be enhanced with new functionalities such as collect, detect, find, includes, etc.