weave is an abstract data type for generating a single output from several streams of data. Although principaly created for making calendars, I suspect that there are likely other uses for this structure.