On Wednesday 17 December 2008 05:48, Rich Hickey wrote:
> On Dec 16, 3:52 pm, Randall R Schulz <rsch...@sonic.net> wrote:
> > ...
> >
> > Which takes us back to why the dot-suffix notation was not working
> > in a macro but (new ...) was. ...
>
> Could you please post a short code example (reducing the problem as
> far as possible), what it produces, and what you expected?


(ns rrs.io-helpers
 (:import
  (java.io  FileWriter
            BufferedWriter)))

(defmacro dcmfail
 []
 `(BufferedWriter. (FileWriter. "stand-back")))

(defmacro ncmsucceed
 []
 `(new BufferedWriter (new FileWriter "careful")))

(defn dcsucceed
 []
 (BufferedWriter. (FileWriter. "watch-out")))

user=> (dcmfail)
java.lang.IllegalArgumentException: Unable to resolve classname: 
BufferedWriter (repl-1:2)

user=> (ncmsucceed)
#<BufferedWriter java.io.bufferedwri...@a9255c>

user=> (dcsucceed)
#<BufferedWriter java.io.bufferedwri...@193f6e2>


Following the test, "careful" and "watch-out" exist, "stand-back" does 
not.


> Thanks,
>
> 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