On Mon, Jan 24, 2011 at 10:04 AM, Pascal Costanza <[email protected]> wrote:
> What is important in an SMP library is the kinds of synchronization > primitives you get. LispWorks provides both very high-level synchronization > via mailboxes, which are extremely convenient to use and cover 80-90% of all > cases, in my experience. On top of that, LispWorks provides the usual mutual > exclusion via locks, but also more fine-grained synchronization primitives, > like read/write (shared) locks, compare-and-swap / atomic operations, > barriers, and ordering of memory accesses. The API is very well designed and > covers a lot of practically occurring cases. > What you say sounds reasonable and also feasible for any implementation out there. In particular ECL already provides read/write locks, the usual locks and will soon export compare-and-swap and atomic operations using libatomic-ops (which is part of ECL already, as it is used by the garbage collector). > If you are looking for inspiration, I think the LispWorks documentation is > available for free on their website. There is also a personal edition of > LispWorks 6.0 that you can play with. > Thanks for the pointer. Obviously, I would rather refrain from using the personal edition, as there might be some conflicts :-) but the documentation seems inspiring and terribly simple. Juanjo -- Instituto de FĂsica Fundamental, CSIC c/ Serrano, 113b, Madrid 28006 (Spain) http://juanjose.garciaripoll.googlepages.com
_______________________________________________ pro mailing list [email protected] http://common-lisp.net/cgi-bin/mailman/listinfo/pro
