On Mar 22, 2009, at 2:28 PM, Michael Wood wrote:

As was pointed out to me recently, http://clojure.org/reader says:

"Symbols beginning or ending with '.' are reserved by Clojure."

So, is .?. not a symbol (because it's called at compile time and at
runtime there is no such thing as .?.)?  i.e. what exactly is the
definition of a symbol, and do the names of macros count?


clojure.contrib.core/.?. is a symbol. Thanks for pointing out that it is one that's reserved to Clojure.

The reference you gave is the canonical documentation for symbols in Clojure. Symbols in Clojure are used to name things including macros.

The name clojure.core/.. works and its name isn't a problem because it's part of Clojure. The case of ".?." is a little unusual (regarding using this kind of name) in that it's named as a variation of ".." for the purpose of proposing it as a possible addition to Clojure at some point.

If we can't get Rich's blessing for this name to be part of contrib, we'll rename it.

Rich, should we rename clojure.contrib.core/.?. to avoid using a name reserved to Clojure?

--Steve

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to