jargon

Design patterns·Wrapping and composing

the character knows its glyph and not its position, because the position was moved out to the caller.

Intrinsic state

Also calledintrinsic vs extrinsic state, extrinsic state, shared state

The split that makes a flyweight possible: intrinsic state is context-free and shareable, extrinsic state is passed in by the caller for the duration of an operation. Naming the split is the useful part, because it is a general technique — pushing context out of an object to make it shareable, cacheable or thread-safe applies well beyond the pattern. It is also the reason a flyweight has to be immutable.

Commonly confused with