anchor.diff:  
   [source, clojure]
   ----
  -(def stream (s/choice
  -              (s/timeout 1000 :timeout)
  -              (s/timeout 900 :value)))
  -
  -(s/subscribe stream
  -             #(println "on-value:" %)
  -             #(println "on-error:" %)
  -             #(println "on-end"))
  +(def stream (rx/choice
  +              (rx/timeout 1000 :timeout)
  +              (rx/timeout 900 :value)))
  +
  +(rx/subscribe stream
  +              #(println "on-value:" %)
  +              #(println "on-error:" %)
  +              #(println "on-end"))
   
   ;; ==> on-value: :value
   ;; ==> on-end
  
positive.code: 
  [source, clojure]
  ----
  (def stream (->> (s/from-coll [1 2 3 4 5])
                   (s/filter #(> % 3))))
  
  (s/subscribe stream
               #(println "on-value:" %)
               #(println "on-error:" %)
               #(println "on-end"))
  
  ;; ==> on-value: 4
  ;; ==> on-value: 5
  
negative.code: 
  [source, clojure]
  ----
  (def sub (rx/on-end sub #(println "end!")))
  ----
  
  === Consume error termination
  