lockfree-queue (hackage): Michael and Scott queues are described in their PODC 1996 paper:  http://dl.acm.org/citation.cfm?id=248052.248106  These are single-ended concurrent queues based on a singlly linked list and using atomic CAS instructions to swap the tail pointers. As a well-known efficient algorithm they became the basis for Java's ConcurrentLinkedQueue.
Keywords: bsd3|concurrent|data|library