// scopes working (defn f [] 23) (defn g [] (let [f (fn [] 11)] (assert (== (f) 11))) 45) g() // check for late binding (defn a [] (b)) (defn b [] (c)) (defn c [] 88) (defn c [] 33) (assert (== (a) 33))