Some context for my question: `choice-evt` constructs an event that behaves 
analogously to a logical disjunction, choosing any of its members that is 
ready for synchronization.

Is there a corresponding event for a logical conjunction (I was looking for 
something like `all-evt` or `every-evt`), which requires that all of its 
members be ready for synchronization at the same time?  If not, is there a 
fundamental barrier to its implementation with the ConcurrentML approach?

Related to this, I've been reading "Kill-Safe Synchronization Abstractions" 
(https://www.cs.utah.edu/plt/publications/pldi04-ff.pdf), and found it 
notable that the swap channel couldn't be implemented in a way that was 
both kill-safe and break-safe (not ruining `sync/enable-break`'s 
exclusive-or guarantee).  I'm wondering if both forms of safety could be 
achieved by using a hypothetical `all-evt` that behaves as I've described.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/1c879735-ee18-40d5-b4a5-3dd12dfe248an%40googlegroups.com.

Reply via email to