Learn More
The most serious impediment to writing substantial programs in the Java&amp;trade; programming language is the lack of a <i>gentricity</i> mechanism for abstracting classes and methods with respect to type. During the past two years, several research groups have developed Java extensions that support various forms of genericity, but none has succeeded in(More)
Despite years of research, the design of efficient nonblocking algorithms remains difficult. A key reason is that current shared-memory multiprocessor architectures support only single-location synchronisation primitives such as compare-and-swap (CAS) and load-linked/store-conditional (LL/SC). Recently researchers have investigated the utility of(More)
Parallel computers with tens of thousands of processors are typically programmed in a data parallel style, as opposed to the control parallel style used in multiprocessing. The success of data parallel algorithms&#8212;even on problems that at first glance seem inherently serial&#8212;suggests that this style of programming has much wider applicability than(More)