Re: Compilable clojure program, but unreadable?
Hi, so it is not as consistent as it could be. Sincerely Meikel -- 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 Note that posts from new members are moderated - please be patient with your first post. 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
Re: Compilable clojure program, but unreadable?
The syntax ::s/kwd is incorrect syntax: it should be either ::kwd (which will resolve in the current namespace) or :s/kwd (only one colon). -S -- 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 Note that posts from new members are moderated - please be patient with your first post. 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
Re: Compilable clojure program, but unreadable?
On Mar 11, 2012 4:10 PM, Stuart Sierra the.stuart.sie...@gmail.com wrote: The syntax ::s/kwd is incorrect syntax: it should be either ::kwd (which will resolve in the current namespace) or :s/kwd (only one colon). -S ::s/kwd is valid, it will cause the namespace of the resulting keyword to be resolved via the namespace aliases in the current namespace. please enjoy rhickey explaining this to cemerick: http://clojure-log.n01se.net/date/2009-04-30.html#08:11 Clojure 1.4.0-master-SNAPSHOT user= :s/k :s/k user= ::s/k RuntimeException Invalid token: ::s/k clojure.lang.Util.runtimeException (Util.java:170) user= (require '[clojure.string :as s]) nil user= ::s/k :clojure.string/k user= -- 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 Note that posts from new members are moderated - please be patient with your first post. 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 -- 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 Note that posts from new members are moderated - please be patient with your first post. 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
Re: Compilable clojure program, but unreadable?
Hi, Am 12.03.2012 um 00:09 schrieb Stuart Sierra: The syntax ::s/kwd is incorrect syntax: it should be either ::kwd (which will resolve in the current namespace) or :s/kwd (only one colon). The reader page says, with :: they are resolved in the current namespace. And this seems to work since they where introduced: user= (require '[clojure.string :as s]) nil user= ::s/join :clojure.string/join user= `s/join clojure.string/join Just as s/join gets resolved to the clojure.string/join, ::s/join gets resolved to :clojure.string/join. Sounds consistent and not in violation of the reader page. Sincerely Meikel -- 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 Note that posts from new members are moderated - please be patient with your first post. 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
Re: Compilable clojure program, but unreadable?
Hi, Is this inconsistent behaviour: user= `s/foo s/foo user= ::s/foo #RuntimeException java.lang.RuntimeException: Invalid token: ::s/foo nil user= (require '[clojure.string :as s]) nil user= `s/foo clojure.string/foo user= ::s/foo :clojure.string/foo I think that ::s/foo should be resolved to :s/foo if there is no alias for s (like symbols). Jonas On Monday, March 12, 2012 1:50:50 AM UTC+2, Meikel Brandmeyer (kotarak) wrote: Hi, Am 12.03.2012 um 00:09 schrieb Stuart Sierra: The syntax ::s/kwd is incorrect syntax: it should be either ::kwd (which will resolve in the current namespace) or :s/kwd (only one colon). The reader page says, with :: they are resolved in the current namespace. And this seems to work since they where introduced: user= (require '[clojure.string :as s]) nil user= ::s/join :clojure.string/join user= `s/join clojure.string/join Just as s/join gets resolved to the clojure.string/join, ::s/join gets resolved to :clojure.string/join. Sounds consistent and not in violation of the reader page. Sincerely Meikel -- 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 Note that posts from new members are moderated - please be patient with your first post. 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
Re: Compilable clojure program, but unreadable?
Hi, Clojure doesn't read files. It reads, compiles and executes a stream of toplevel expressions. Hence the file is compilable, but not readable. If you do not want to execute the forms contained in a file, you have to avoid any dynamic feature. In particular aliased keywords with :: since those can only be handled after the require is executed. Sincerely Meikel -Ursprüngliche Nachricht- Von: Jonas jonas.enl...@gmail.com An: clojure@googlegroups.com Gesendet: So, 11 Mrz 2012, 07:26:28 MEZ Betreff: Compilable clojure program, but unreadable? Hi If I have the following short Clojure program: ;; unread.clj (require '[clojure.string :as s]) (prn ::s/kwd) The second form can't be read by the clojure reader: user= (def reader (java.io.PushbackReader. (clojure.java.io/reader unread.clj))) #'user/reader user= (read reader) (require (quote [clojure.string :as s])) user= (read reader) java.lang.Exception: Invalid token: ::s/kwd (NO_SOURCE_FILE:0) But if I load the file, prior to reading it, it works fine: user= (load-file unread.clj) :clojure.string/kwd nil user= (def reader (java.io.PushbackReader. (clojure.java.io/reader unread.clj))) #'user/reader user= (read reader) (require (quote [clojure.string :as s])) user= (read reader) (prn :clojure.string/kwd) Can anyone think of a way to read the file without loading/compiling it? Thanks, Jonas -- 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 Note that posts from new members are moderated - please be patient with your first post. 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 -- 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 Note that posts from new members are moderated - please be patient with your first post. 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