 (go
  (<! (init-compiler macro-info (fn [c] (prn "INIT RES" c))))
  (go-loop [] (rerender (<! view)) (recur))
- (pprint (meta (fetch (morph-eval '(ellipse {:id 42} (map (fn [x] (rectangle {:id x :fn (fn [x] 42)})) (range 3)))) [submorphs 0 submorphs 0])))
- (pprint (meta (fetch (ellipse {:id 42} (map (fn [x] (rectangle {:id x :fn (fn [x] 42)})) (range 3))) [submorphs 0 submorphs 0])))
  (run-tests 'cljs-morphic.test))

                         world-state) hand]
         [{:type :click-left
           :target-props props
           :args {}}] [(if-let [mouse-click-right-cb (or (:click-left props) (:mouse-click props))]
                         (mouse-click-right-cb world-state ($morph (:id props)))
                         world-state) hand]
         :else :zero))


                      (observe editor-id
                               target-morph
                               (fn [world editor inspected-morph _]
                                 (let [expr (fetch world [($morph inspected-morph) description])]
                                   (cond-> world
                                     true (redefine ($morph editor) (fn [e p s]
                                                                      (set-editor-value (e p s) expr)))
                                     ;(=> world editor :mapping-active) (putback [($morph inspected-morph) description] expr)
                                     )))
                               (fn [world editor inspected-morph]
                                 (-> world
                                   (redefine ($morph editor) (fn [e p s]
