anchor.diff:  
     /// Returns a stream that produces elements passed through the given job
     /// whenever the given streams produces elements.
  +#if DOC
     ///
     /// Reference implementation:
     ///
  
positive.code:   /// read.  See also: `indefinitely`.
    val values: Stream<'x> -> Alt<'x>
  
    /// Preliminary and subject to change.
    val foldJob: ('s -> 'x -> #Job<'s>) -> 's -> Stream<'x> -> Job<'s>
    /// Preliminary and subject to change.
    val foldFun: ('s -> 'x -> 's) -> 's -> Stream<'x> -> Job<'s>
  
    /// `foldFromJob s sx2sJ xs` is equivalent to `foldJob sx2sJ s xs` and is
    /// often syntactically more convenient to use.
    val foldFromJob: 's -> ('s -> 'x -> #Job<'s>) -> Stream<'x> -> Job<'s>
    /// `foldFromFun s sx2s xs` is equivalent to `foldFun sx2s s xs` and is often
    /// syntactically more convenient to use.
    val foldFromFun: 's -> ('s -> 'x -> 's) -> Stream<'x> -> Job<'s>
  
negative.code:   /// `once xJ` is equivalent to `indefinitely xJ |> take 1`.
    val once: Job<'x> -> Stream<'x>
  
    /// Returns a stream that contains the elements generated by the given job.
    val unfoldJob: ('s -> #Job<option<'x * 's>>) -> 's -> Stream<'x>
  
    /// Returns a stream that contains the elements generated by the given
    /// function.
    val unfoldFun: ('s -> option<'x * 's>) -> 's -> Stream<'x>
  
    /// Returns an infinite stream of repeated applications of the given job to
    /// the given initial value.
    val iterateJob: ('x -> #Job<'x>) -> 'x -> Stream<'x>
  
    /// Returns an infinite stream of repeated applications of the given function
    /// to the given initial value.
    val iterateFun: ('x -> 'x) -> 'x -> Stream<'x>
  
    /// Creates an infinite stream of the given value.
  