A list which is built using a non-strict constructor. Any head or tail of the list may be an unevaluated closure. Also known as streams since they may be used to carry a sequence of values from the output of one fUNCtion to an input of another. See also Lazy evaluation.