The Extensible Reader is really the next step in terms of a common extensible data exchange format. Atm everybody builds this himself for his application, this commes with alot of wheel reinvention. Make it extensible is the first step to find out whats most used. People can find each other and creat common abstractions.
I can't see the gain of:<p><pre><code> #uuid "550e8400-e29b-41d4-a716-446655440000"
</code></pre>
over:<p><pre><code> (uuid "550e8400-e29b-41d4-a716-446655440000")
</code></pre>
The reader already supports it, functions/macro are already namespaced and you still have to parse it anyway.
A simple example reading a UUID of the form `#uuid "550e8400-e29b-41d4-a716-446655440000"` is found at <a href="https://github.com/clojure/clojure/blob/master/src/clj/clojure/uuid.clj" rel="nofollow">https://github.com/clojure/clojure/blob/master/src/clj/cloju...</a><p>A much more complex example reading a UTC instant in time like `#inst "2010-11-12T13:14:15.666-06:00"` is found at <a href="https://github.com/clojure/clojure/blob/master/src/clj/clojure/instant.clj" rel="nofollow">https://github.com/clojure/clojure/blob/master/src/clj/cloju...</a>