Шаблон Decorator - это динамическое расширение-время выполнения классов. Он динамически формирует отношения is-a.
Я начал задаваться вопросом, не слишком ли усложнял свой API, используя шаблон Decorator после того, как получил этот ответ о различии между mixin и абстрактным классом.