   "Returns true if x implements Fn, i.e. is an object created via fn."
   {:added "1.0"
    :static true}
-  [x] (extends? :clojerl.erlang.Fn x))
+  [x] (erlang/is_function.e x))
+
 
 (defn associative?
  "Returns true if coll implements Associative"


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; var documentation ;;;;;;;;;;;;;;;;;;;;;;;;;;

;;------------------------------------------------------------------------------
;;------------------------------------------------------------------------------

(load "core_print")

(defmacro simple-benchmark
  "Runs expr iterations times in the context of a let expression with

  created."
  {:added "1.0"
   :static true}
  ([m [k & ks] f & args]
   (if ks
     (assoc m k (apply update-in (get m k) ks f args))
     (assoc m k (apply f (get m k) args)))))

(defn update
  "'Updates' a value in an associative structure, where k is a
