A particularly interesting idea is to have the context of a thread of execution be contained inside of a dream, using local instance variables. This would allow multitasking by juggling the execution of different dreams. One could even swap a dream out to mass storage and swap it back in later, or send a dream to another processor, implimenting a sort of vagabond task, or migrant worker.
The use of such migrant workers holds promise as a representational scheme in applications such as factory automation and CIM. In these applications, a peice of work typically moves from machine to machine to have different operations performed on it, such as drilling, milling, welding, deburring, anealing, etc. A migrant worker task could be associated with each such object, and the task would travel with the object, from machine to machine, as the manufacturing progressed.