OpenType was meant to provide type designers with more control over how their fonts behave. This is especially important in languages that use a great deal of diacritics and/or contextual replacement, such as Arabic or Indic languages. For this, the OpenType layout tables were invented. These are font file tables that include information about the substitution and positioning of glyphs in certain circumstances.
Glyph substitution in Latin is optional. However, it is often used to provide esthetical alternatives. The "fi" sequence is often rendered as a used ligature:
Another area where glyph substitution may come in useful is to provide justification alternates: thus, the line may be aligned without having to resort to wider or narrower spacing, by substituting a wider glyph for "a".
Glyphs may have be positioned for esthetic reasons, but often without glyph positioning is plain wrong. For example, this illustration of a sound change would not be clear at all:
From this, however, it immediately becomes clear we are speaking about one of the changes in Old English breaking where short or long e becomes a short or long diphthong eo:
These examples show two things: