         state-s (->> update-s
                      (rx/scan #(-apply-update %2 %1) state)
                      (rx/catch on-error)
+                     (rx/retry 1024)
                      (rx/share))]
 
     ;; Process event sources: combine with the latest model and the result will be

  "A default error handler."
  [e]
  (println "Unexpected error: " e)
  (rx/empty))

(defn init
  "Initializes the stream event loop and

      (rx/with-latest-from vector state-s $)
      (rx/flat-map (fn [[event model]] (-apply-watch event model stream)) $)
      (rx/catch on-error $)
      (rx/retry 1024 $)
      (rx/on-value $ emit!))

    ;; Process effects: combine with the latest model to process the new effect
