 
 (defn compute-graph
   [] (InMemoryGraph. (atom {:vertices {} :next-id 0}) (atom {})))
-
-#_(defn logged-compute-graph
-    ([log-chan] (LoggedGraph. (compute-graph) log-chan))
-    ([g log-chan] (LoggedGraph. g log-chan)))
 
 (defn eager-async-vertex-processor
   [{:keys [id] :as vertex} ctx]

      (include-vertex! [_ v] (err/unsupported!))
      (execute!
        [_]
        (add-watch! g :remove-vertex watch-id (fn [evt] (signal! (peek evt) sync-vertex-signal)))
        (let [t0 (now)]
          (loop [i 0, colls 0, sigs 0]
            (if (<= i max-iter)
              (let [verts (vertices g)
                    sigs' (sig-fn verts s-thresh)
                    colls' (coll-fn verts c-thresh)]
                (if (and (pos? sigs') (pos? colls'))
                  (recur (inc i) (long (+ colls colls')) (long (+ sigs sigs')))
                  (do (remove-watch! g :remove-vertex watch-id)
                      (execution-result :converged colls sigs t0 {:iterations i}))))

        [clojure.core.reducers :as r]
        [cljs.core.async :as a :refer [chan close! <! >! alts! timeout]])]))

;;#?(:clj (taoensso.timbre/set-level! :warn))

;; (warn :free-ram (.freeMemory (Runtime/getRuntime)))

