A system and method for sharing a set of resources among a plurality of
processes, comprising creating a version of a resource for each one of
the plurality of processes that requires access to the resource wherein a
version of the resource is one of: 1) a representation of the resource at
a particular point in time; and 2) a transformation of the resource;
making each of the created versions available to the plurality of
processes; and notifying a process in the plurality of processes when a
resource in the set of resources upon which the process requires access
is updated.