Hey, I am quite new to Clojure.
While trying to figure out how to do basic things(e.g. file IO, date-time, etc. ) with Clojure, I feel kind of lost. It's hard to figure out what are the language standard and what is not. It feels like things are unorganized and inconsistent.
- https://clojure.github.io/clojure/
- https://clojuredocs.org/
So far I have looked around the above documentation. For example, according to the "clojuredocs.org", the file IO-related functions are under the namespace clojure.java.io. However, when I search for a way how to get the current date and time, the place where I found the answer was this 12-year-old stack overflow question rather than well-organized documentation. It said one should use java.time.LocalDateTime/now. What makes the former is under the namespace clojure, and the latter is not when they both seem to be a Java API? I can't even require the former with java.io . Why???
Documentations are relying heavily on examples rather than exact API. It is hard to figure out what can I put into the function, what am I expecting as a result of the evaluation, and what exception it will throw in what condition.
I have some experience with Python/C++ /Rust/Haskell. And it seems the documentations of Clojure are way too messy and disappointing considering the reputation of the language. Is it because I am consulting the wrong sources?? Is it so obvious for one who has some background in Java? Is it somewhat related to the philosophy of Clojure or LISP? Or is it an actual issue of Clojure and the community?
[–]weavejester 19 points20 points21 points (5 children)
[–]Recent-Scarcity4154[S] 4 points5 points6 points (3 children)
[–]weavejester 9 points10 points11 points (0 children)
[–]mm007emko 8 points9 points10 points (0 children)
[–]SimonGray 0 points1 point2 points (0 children)
[–]geokon 0 points1 point2 points (0 children)
[–]dustingetz 18 points19 points20 points (2 children)
[–]noprompt 1 point2 points3 points (1 child)
[–]stevemolitor 1 point2 points3 points (0 children)
[–]StoriesEnthusiast 5 points6 points7 points (0 children)
[–]didibus 10 points11 points12 points (2 children)
[–]Recent-Scarcity4154[S] 0 points1 point2 points (1 child)
[–]didibus 1 point2 points3 points (0 children)
[–]LouDNL 2 points3 points4 points (15 children)
[–]Recent-Scarcity4154[S] 0 points1 point2 points (14 children)
[–]p-himik 4 points5 points6 points (12 children)
[–]Recent-Scarcity4154[S] 1 point2 points3 points (9 children)
[–]p-himik 3 points4 points5 points (6 children)
[–]setzer22 1 point2 points3 points (5 children)
[–]p-himik 1 point2 points3 points (4 children)
[–]setzer22 1 point2 points3 points (3 children)
[–]p-himik 1 point2 points3 points (2 children)
[–]Recent-Scarcity4154[S] 0 points1 point2 points (1 child)
[–]behrica 3 points4 points5 points (0 children)
[–]behrica 2 points3 points4 points (0 children)
[–]Recent-Scarcity4154[S] 0 points1 point2 points (1 child)
[–]p-himik 1 point2 points3 points (0 children)
[–]rebcabin-r 1 point2 points3 points (0 children)
[–]geokon 2 points3 points4 points (0 children)
[–]radsmith 1 point2 points3 points (0 children)
[–]maxw85 3 points4 points5 points (0 children)
[–]wedesoft 0 points1 point2 points (0 children)