code: def producer(self, f):
          
          sender, recver = self.pipe()
          self.spawn(f, sender)
          return recver
docs: Convenience to create a `Pipe`_. *f* is a callable that takes the
          `Sender`_ end of this Pipe and the corresponding `Recver`_ is
          returned::
  
              def counter(sender):
                  i = 0
                  while True:
                      i += 1
                      sender.send(i)
  
              recver = h.producer(counter)
  
              recver.recv() # returns 1
              recver.recv() # returns 2