Hi,
I want to implement some concurrent (lock-free) libraries portable
across different Common Lisp implementations and benefit from CAS
(COMPARE-AND-SWAP) availability. But, at the moment SBCL is the only
CL implementation I know of that provides a COMPARE-AND-SWAP function
(SB-EXT:COMPARE-AND-SWAP). What is the situation for other CL
implementations?
Regards.
On Dec 7, 1:15 am, Volkan YAZICI <·············@gmail.com> wrote:
> Hi,
>
> I want to implement some concurrent (lock-free) libraries portable
> across different Common Lisp implementations and benefit from CAS
> (COMPARE-AND-SWAP) availability. But, at the moment SBCL is the only
> CL implementation I know of that provides a COMPARE-AND-SWAP function
> (SB-EXT:COMPARE-AND-SWAP). What is the situation for other CL
> implementations?
>
> Regards.
The Scieneer CL has good support for atomic operations built on
compare-and-swap, and supports atomic operations on symbol value
cells,
symbol property lists, cons car and cdr cells, simple-vector elements,
structure slots except raw slots, and standard-object slots. For more
information see: http://www.scieneer.com/scl/doc/synchronisation.html
Regards
Douglas Crosher