The *(term) for a _(strategy) to evaluate objects only when one is sure they are useful or needed, and not before.

Lazy evaluation allows avoiding lots of (possibly infinite) computations, while greatly simplifying the way to code _(high-level) programs.

One disadvantage is that evaluation order is not inherently specifiable; an extra notation is usually required. Another disadvantage is that computational suspensions must be kept around conservatively until explicitly worked out that they are not needed.
