> I think the big problem, is that Clojure makes a big deal about being > "Simple". That is, avoiding unneeded complexity, but then throws its > users into the sea of complexity that is Java. If I want to write > arbitrary binary data to a file, I really don't want to take the time > to learn what a FileOutputStream is, or a DataOutputStream. All I > really want is to just spit some binary data into a file. All I really > want is an interface like this: > > (with-file f (open "foo.baz" "w") > (write-int f 1) > (write-string f 3)) > > Doing this would allow users to port the same code to Clojure-CLR, > Clojure-JVM, or ClojureScript...and write truly compatible code. As > someone who doesn't know Java, my Clojure development is greatly > slowed because I must spend hours pouring over the Java docs to figure > out how to do simple things like write a file. I have to be worried > about accidental reflection, proper class construction (or even > reflection when the class is constructed), etc. > > It's my belief that this is why Python has had such success with the > beginner programmers. You can go to the Python docs...find a section > on "writing files" and in a minute know everything there is to know > about writing files. Python even includes a built-in mini web server! > If I want to write a mini-webserver in stock Clojure...ummm...do I > start with Jetty?
I agree with Timothy. I have been using Clojure for over 2 years and still consider myself a beginner (despite having gotten a Clojure article published in PragProg magazine). I have a Seesaw-based Clojure application running, but it's been painful every step of the way, and it continues to be so because I always have to start by figuring out how to do X--is the answer in Clojure or Java? Would it kill somebody to write a library of simple functions that would answer most beginners' simple needs, then have it "blessed" as canonical? I'd write it myself, but I still don't know enough! If every beginner has to painfully figure these things out, most beginners are going to bail--which means that Clojure remains a niche language, unknown to a lot of people who could have brought their considerable creativity to the Clojure community. And, Timothy, you make extremely valid points. They are very far away from being a rant. -- 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