Can't you make a two processes intercommunicate merely by doing foo |[0=1] bar ? Seems like the real concern in any event is deadlock.