This text presents topos theory as it has developed from the study of sheaves. Sheaves arose in geometry as coefficients for cohomology and as descriptions of the functions appropriate to various kinds of manifolds (algebraic, analytic, etc.). Sheaves also appear in logic as carriers for models of set theory as well as for the semantics of other types of logic. Grothendieck introduced a topos as a category of sheaves for algebraic geometry. Subsequently,...