The poison pill video shows putting a special value on a channel to stop a worker. As mentioned in the video, this can only work when there’s a single consumer taking from the channel.
I’m wondering why you would use this rather than just closing the channel and using
if-some to read items.
(go (loop  (if-some [v (<! work)] (do-work v) (recur))))
The only reason I can think of for using a poison pill is if you want to communicate a reason for stopping to the consumer.
Is there another reason I missed?