def send value
      LOCK.synchronize do
        unify @end.head, value
        unify @end.tail, Stream.new
        @end = @end.tail
      end
    end
def send value
      LOCK.synchronize do
        unify @end.head, value
        unify @end.tail, Stream.new
        @end = @end.tail
      end
    end
Create a stream object, bind it to the input variable
 Instance variables are necessary because @end is state
 This needs to be synchronized because it uses @end as state