private static void runClojureTree(Integer[] data) { out.println("Clojure PersistentTreeMap"); clojure.lang.PersistentTreeMap cmap = clojure.lang.PersistentTreeMap.EMPTY; // warmup for (Integer v : data) { cmap = cmap.assoc(v, v); } cmap = null; // System.gc(); long begin = System.nanoTime(); for (int i = 1; i <= data.length; i++) { start(); cmap = clojure.lang.PersistentTreeMap.EMPTY; for (int j = 0; j < i; j++) { cmap = cmap.assoc(data[j], data[j]); } for (int j = 0; j < i; j++) { cmap = cmap.without(data[j]); } out.println(end()); } out.println(String.format("\n%s", System.nanoTime() - begin)); }