Kill-Safe Synchronization Abstractions

by Matthew Flatt and Robert Bruce Findler
Appears in Programming Language Design and Implementation (PLDI) 2004

Paper: pldi04-ff.pdf
Code and tests:  pldi04-ff.tar.gz  Includes all .ss files listed below
Code: Figure 7, kill-safe buffered queue Figure 9, selective dequeue Figure 10, allow untrusted predicates Figure 11, break-safe swap channel Figure 12, kill-safe swap channel
Tests: Test-support module Message-queue tests (Figure 7) Message-queue tests (Figures 9 and 10)
To execute:
  1. Download the above module files (in pldi04-ff.tar.gz or individually)
  2. Install DrScheme, version 206p1.
  3. Choose the (module ...) language in DrScheme
  4. Open a module (e.g.,
  5. Click Execute