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
-~----------~----~----~----~------~----~------~--~---

Reply via email to