On Mon, Jun 13, 2011 at 11:17 AM, Alan Kay <alan.n...@yahoo.com> wrote: > For example, take a look at Alex Warth's "Worlds" work (and paper) and see > how that might be used to deal with larger problems of consistency and > version control in a live system.
I just read this paper for the first time. Very nice work; I think it is a nice generalization of the software transactional memory work that's been done recently. At the same time, it has some of the same drawbacks (especially in regard to managing external side effects, like from I/O). On the other hand, there's been a lot of work done on efficient implementations of transactional memory in software and hardware, and worlds can benefit from this fairly directly. For example, (to cite my own work): Unbounded Transactional Memory is a straightfoward cache modification which would make worlds scalable (http://cscott.net/Publications/HPCA05/hpca05-camera.pdf) and functional arrays provide a mechanism for decoupling the performance of the implementation from the size of the "chain of worlds" to allow deep undo-trees, as described in http://cscott.net/Publications/scool05.pdf and my thesis. In particular, I recommend Tyng-Ruey Chuang’s implementation of shallow binding (http://academic.research.microsoft.com/Publication/313627/a-randomized-implementation-of-multiple-functional-arrays ). --scott -- ( http://cscott.net ) _______________________________________________ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc