title: How do we define a grammar for clojure code using instaparse?
body: <p>I'm a newbie to parsing and wish to analyse some clojure code. I am hoping that someone can provide an example of how clojure code can be parsed using instaparse. I just need to do numbers, symbols, keywords, sexps, vectors and whitespace.</p>
  
  <p>Some examples that I wish to parse:</p>
  
  <pre><code>(+ 1 2 
     (+ 3 4))
  
  {:hello "there"
   :look '(i am 
             indented)}
  </code></pre>