On Nov 10, 2010, at 6:59 AM, Pepijn de Vos wrote: > Hi all, > > It occurred to me that Clojure has a huge core namespace. While OO languages > like Python and Java stuff functions into modules and objects and have a core > of a few dozen functions, Clojure's core contains everything you might need > for most tasks, but has over 400 functions in core, with no easy way to > navigate them.
I'm hijacking the thread, but at least I changed the subject. :-P Your first paragraph reminded me of one of the clojure emails I've wanted to send lately, but haven't gotten around to. I agree with your observation, but in addition to tools to navigate the functions, I wanted to suggest that some of the functions should be collapsed, leading to a smaller collection of functions to actually have to know. Especially with protocols, I believe that the cost of having developers remember both rseq and reverse (why can't reverse just DTRT if it is given a vector?), last and peek (same), butlast and pop (same), and nth and get (same) is unnecessarily high. Those are all vector examples, which are all I had collected in my initial notes for the email. I suspect there are others, but I haven't done the work yet. I'd love to see these cleaned up, myself, and would be willing to help do so if my Clojure skills proved sufficient. Gary -- 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