On Tuesday 16 December 2008 12:37, Rich Hickey wrote: > On Dec 16, 2:32 pm, Stuart Halloway <stuart.hallo...@gmail.com> wrote: > > Hi Randall, > > > > The syntactic sugar forms are reader behavior, and occur too soon: > > at read time, not macro expansion time. > > ... > > > Macros need to expand to real forms, not reader shortcuts. > > That's generally true, but does not apply here, because Classname. is > a regular symbol reader-wise.
Which takes us back to why the dot-suffix notation was not working in a macro but (new ...) was. Can you explain that in terms of intended behaviors (the operation of nested macro expansion, perhaps?), or might it be a bug? If it matters, my macro was expanding to a (cond ...) which contained dot-suffixed-classname constructor notation and my constructors consistently got errors such as this one: java.lang.IllegalArgumentException: Unable to resolve classname: BufferedWriter As I pointed out on #clojure when it first arose, import declarations for java.io.BufferedWriter are in place in the file in which the macro definition appeared. > Rich Randall Schulz --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---