Names of design patterns appear in small capitals: e.g., ADAPTER. Page numbers in bold indicate the definition of a term. Numbers in italics indicate a diagram for the term. Letters after a diagram's page number indicate the kind of diagram: a "c" denotes a class diagram, an "i" denotes an interaction diagram, and an "o" denotes an object diagram. For example, 88co means that a class and object diagram appears on page 88.

## M

MacApp
  use of CHAIN OF RESPONSIBILITY 232
  use of COMMAND 242
  use of DECORATOR 179, 180
  use of FACTORY METHOD 113, 115
Macbeth 1
MacFactory 50c
Macintosh 48, 52
MacroCommand235, 235c, 241
magic token 346
Manipulator 109, 110c
MapSite 82, 82c
Marriage of Convenience 149
Maze 82c, 84
MazeBuider 101
MazeFactory 92
  as singleton 133
MazeGame 84, 114
MazePrototypeFactory122
MEDIATOR 273
  combined with OBSERVER 299
  compared with CHAIN OF RESPONSIBILITY 348
  compared with FACADE 282
  compared with OBSERVER 346, 348
  in catalog summary 9
  use of delegation in 21
Mediator
  communicating with Colleague 278, 282
  participant of MEDIATOR 276co, 277, 348i
  omitting abstract class of 278
mediator 274
member function 361, see also operation
MEMENTO 283
  in catalog summary 9
Memento
  combined with COMMAND 239, 287
  participant of MEMENTO 285, 285c, 286i
memento 284
  costs associated with 286
  language support for 287
MemoryStream 183
Menu 50c, 233c
menu 233
  configuring 60, 234
  pull-down 58
MenuItem 59, 61c, 233, 233c
metaclass 133, 361
method 361, see also operation
Microsoft Windows 52
mixin class 16, 16c, 361
Model/View/Controller 4, 5
  use of COMPOSITE 5, 172
  use of FACTORY METHOD 115
  use of OBSERVER 5, 303
  use of STRATEGY 6
MonoGlyph 44, 45c
Motif 35, 47, 48, 49, 51, 87
MotifFactory 49, 50c
multiple dispatch, see dispatch, multiple
multiple inheritance, see also mixin class
  used to implement class adapter 141
  used to implement BRIDGE 156
MVC, see Model/View/Controller
Meyer, Bertrand 149