And I would like to kindly ask from Mr. Stu to make the new book as extensive as possible (just like Programming Ruby book) and we will have a title like "The pickaxe book" :)
On Jan 13, 12:38 pm, aria42 <ari...@gmail.com> wrote: > For what's it worth, I think the "Programming Clojure" book is > excellent (Okay Stuart, make the check payable to ....). My only > complaint is that the I wish there were another largish example > besides the two in there (mc simulation and the lancelet thing). > > Cheers, Aria > > On Jan 13, 12:58 am, bOR_ <boris.sch...@gmail.com> wrote: > > > Thanks for the answer. I think you'll need a reply from Chouser or > > Rich (or someone alike) when they wake up. The best I can give you is > > this part of the source, where (I think) it is defined how clojure is > > build upon java. > > >http://code.google.com/p/clojure/source/browse/trunk/src/?r=1205#src/... > > > On Jan 13, 9:41 am, HB <hubaghd...@gmail.com> wrote: > > > > >Not sure what you want to achieve by studying the source code. I think > > > >the answer that I can give to what works best for you will depend on > > > >what you want to study the source code for. > > > > I want to be familiar with a language design in general and how it > > > integrates with Java Platform. > > > > >I'm also not sure what you mean by 'what is the best place to start > > > >reading. > > > > What I mean is which file in the source code I have to read in order > > > to start mining. > > > This depends on why I'm reading the source code, right? > > > > On Jan 13, 10:19 am, bOR_ <boris.sch...@gmail.com> wrote: > > > > > Not sure what you want to achieve by studying the source code. I think > > > > the answer that I can give to what works best for you will depend on > > > > what you want to study the source code for. > > > > > I'm also not sure what you mean by 'what is the best place to start > > > > reading..' The link that I gave before is a direct link to the source > > > > code of clojure. That is the source. > > > > >http://code.google.com/p/clojure/source/browse/trunk/src/clj/clojure/... > > > > > On Jan 13, 9:04 am, HB <hubaghd...@gmail.com> wrote: > > > > > > Do you suggest that I read "Programming Clojure" first and then trying > > > > > to study the source code? > > > > > What is the best place (file, package or what ever) to start reading > > > > > the source code? > > > > > > On Jan 13, 10:01 am, bOR_ <boris.sch...@gmail.com> wrote: > > > > > > > Here you can peek at the source code of clojure. > > > > > > >http://code.google.com/p/clojure/source/browse/trunk/src/clj/clojure/... > > > > > > > It is about 3700 lines, and although you have to get used to a few > > > > > > new > > > > > > functions and names that are normally not exposed when you use > > > > > > clojure, it looks fairly simple. > > > > > > > Here is the function that defines defn itself. Most functions in the > > > > > > source are a magnitude easier than this one for us newbies =). > > > > > > > (def > > > > > > > #^{:doc "Same as (def name (fn [params* ] exprs*)) or (def > > > > > > name (fn ([params* ] exprs*)+)) with any doc-string or attrs > > > > > > added > > > > > > to the var metadata" > > > > > > :arglists '([name doc-string? attr-map? [params*] body] > > > > > > [name doc-string? attr-map? ([params*] body)+ attr- > > > > > > map?])} > > > > > > defn (fn defn [name & fdecl] > > > > > > (let [m (if (string? (first fdecl)) > > > > > > {:doc (first fdecl)} > > > > > > {}) > > > > > > fdecl (if (string? (first fdecl)) > > > > > > (rest fdecl) > > > > > > fdecl) > > > > > > m (if (map? (first fdecl)) > > > > > > (conj m (first fdecl)) > > > > > > m) > > > > > > fdecl (if (map? (first fdecl)) > > > > > > (rest fdecl) > > > > > > fdecl) > > > > > > fdecl (if (vector? (first fdecl)) > > > > > > (list fdecl) > > > > > > fdecl) > > > > > > m (if (map? (last fdecl)) > > > > > > (conj m (last fdecl)) > > > > > > m) > > > > > > fdecl (if (map? (last fdecl)) > > > > > > (butlast fdecl) > > > > > > fdecl) > > > > > > m (conj {:arglists (list 'quote (sigs fdecl))} m)] > > > > > > (list 'def (with-meta name (conj (if (meta name) (meta > > > > > > name) > > > > > > {}) m)) > > > > > > (cons `fn fdecl))))) > > > > > > > On Jan 13, 8:51 am, HB <hubaghd...@gmail.com> wrote: > > > > > > > > Hey, > > > > > > > How much Clojure source code is complicated? > > > > > > > I'm not a programming Godfather but I would like to study Clojure > > > > > > > source code. > > > > > > > Could an intermediate programmer like me grasp the source code? > > > > > > > Thanks. --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---