     open-unquote open-anon-arg open-keyword open-discard whitespace open-comment
     open-char})
 (def sexp
-  (parser {:root-tag :root
+  (p/parser {:root-tag :root
            :main :expr*
-           :space (unspaced gspaces :*)}
+           :space (p/unspaced gspaces :*)}
     :expr- #{
              :list
              :vector

  (:use paredit.regex-utils)
	(:require [clojure.zip :as zip])
  (:require [clojure.contrib.zip-filter :as zf])
  (:use net.cgrand.parsley)
  (:require [net.cgrand.parsley.lrplus :as lr+])
  (:require [net.cgrand.regex :as r]))


(require '[net.cgrand.parsley.lrplus :as l])
(require '[net.cgrand.parsley.fold :as f])
(require '[paredit.loc-utils :as lu])
(let [c (slurp "C:\\Users\\Laurent\\Downloads\\1.3.0-alpha6\\src\\clj\\clojure\\core.clj")]

  (println "Executing full parser:")
  (dotimes [_ 10] (time (sexp c)))

  (println "Executing parser incrementally:")
  (dotimes [_ 10] (time (-> sexp p/incremental-buffer (p/edit 0 0 c) parse-tree)  ))
  (println "Test edit incremental")

  (dotimes [_ 10]
    (let [b (let [_ (println "initial incremental buffer")
                  b (time (-> sexp p/incremental-buffer (p/edit 0 0 c)))
                  _ (println "initial parse-tree")
                  _ (time (p/parse-tree b))]
              b)
          b (let [_ (println "edit in the top comment")
                  b (time (-> b (p/edit 1 0 "coucou")))
                  _ (println "parse-tree after edit in the top comment")
                  _ (time (p/parse-tree b))]
              b)
          b (let [_ (println "add '(\\n' before the top comment")
                  b (time (-> b (p/edit 0 0 "(\n"))) 
                  _ (println "parse-tree after add '(\\n' before the top comment")
                  _ (time (p/parse-tree b))]
              b)]
      b))
  (= c (lu/node-text (-> sexp p/incremental-buffer (p/edit 0 0 c) p/parse-tree)) (lu/node-text (sexp c)))))
