Bill Lawvere wrote: I don't know the technical meaning of "lazy"; was it an attempt to avoid the
processing speed and ram needed to take account of the composition with inclusion maps, etcetera?
No, "lazy evaluation" is a strategy of putting off computations until their results are known to be necessary. The opposite is called "eager evaluation". Laziness is often wiser. For example, a programming statement x:=y calls for the value of x to be set equal to y. A strategy of eager evaluation will do this right away, while lazy evaluation will put off doing it until the variable x is used in some other task. If x is never used, this saves work. I think most functional programming languages either delay evaluation in this way, or give the user the option to do this. Best, jb