Generalize Linear Channels by Usage Annotations
U (usage) ::= O (output) | I.U (input & sequential execution) | U|V (concurrent execution) | !U (replication) | - (none)
c:(O|O|I.I.-)t int chan; ?из (spawn(fn()=>send(c, 3)); spawn(fn()=>send(c, 7)); let v = recv(c) w = recv(c) in ?)