Visitor Pattern Allows for one or more operation to be applied to a set of objects at runtime, decoupling the operations from the object structure. GOF