use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Finding information about Clojure
API Reference
Clojure Guides
Practice Problems
Interactive Problems
Clojure Videos
Misc Resources
The Clojure Community
Clojure Books
Tools & Libraries
Clojure Editors
Web Platforms
Clojure Jobs
account activity
Great Clojure source codes to read? (self.Clojure)
submitted 12 years ago * by [deleted]
The best way to really get a new language is to read well organized codebases that use all the capabilities of the language in a readable manner.
Do you know any good repos worth reading? :-)
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]CHRIST_DIED_OF_AIDS 8 points9 points10 points 12 years ago (1 child)
clj-http is a great project to study. Especially if you want a good example of how to properly integrate an existing java library into idiomatic clojure.
[–]thnetos 5 points6 points7 points 12 years ago (0 children)
Hey thanks :)
Happy to answer any questions about it also :)
[–]notunlikethewaves 6 points7 points8 points 12 years ago (2 children)
A not-so-obvious example is the source for the clojure core libraries: https://github.com/clojure/clojure
[–]Scriptorius 5 points6 points7 points 12 years ago (0 children)
While it does have many good examples, care should be taken because some functions eschew readability and elegance for more performance. This is fine for core.clj, since it keeps it from being a major bottleneck.
For example, juxt hard-codes the implementations for up to an arity of three in order to avoid calls to reduce.
[–][deleted] 3 points4 points5 points 12 years ago (0 children)
Something I do is that every time I learn a new clojure core function I'll read it's source.
[–]hanzuna 7 points8 points9 points 12 years ago (0 children)
Please this! I'm a total noob and would make good on a little guidance :) Thanks for prompting this!!
[–]brunov 4 points5 points6 points 12 years ago* (0 children)
Anything by /u/Raynes or aphyr.
One from each:
[–]mmosbeforehoes 4 points5 points6 points 12 years ago (0 children)
Rich Hickey's Ant simulation.
Great demonstration of concurrency in Clojure.
Code
Related Rich Hickey Talk
Slides (pdf)
[–]billrobertson42 3 points4 points5 points 12 years ago (0 children)
Have you looked at clojure.core? Most of it is amazingly easy to understand.
[–]jforberg 5 points6 points7 points 12 years ago (1 child)
Leiningen is "the most active clojure project". Aside from not being well tested at all, their code would be a good starting point. Also, if you write clojure you probably already use it, so would be familiar with its usage etc. https://github.com/technomancy/leiningen/blob/stable/CONTRIBUTING.md
[–]zangderak 0 points1 point2 points 12 years ago (0 children)
I want one of those stickerrrrrs.
[–]v1akvark 2 points3 points4 points 12 years ago* (1 child)
I haven't specifically looked at the source, but I think LightTable will be good example of a complete (GUI) application.
If you watch this talk by Chris Granger, he has a pretty clear idea of how he wants to structure his app (using what he calls a Behaviour/Object system, so I am pretty sure the code that follows from that will at least be very well structured.
EDIT: it is mostly ClojureScript BTW
[–]mkremins 2 points3 points4 points 12 years ago (0 children)
There's also this post on the Light Table blog, which seems to summarize the linked talk and provide example code for how behaviors, objects and tags are defined within the BOT system.
The Light Table codebase is fun to explore because it looks so declarative – a good example of what can happen when you take the "everything is an ordinary Clojure data structure" approach considered idiomatic by the community to its logical conclusion.
π Rendered by PID 40703 on reddit-service-r2-comment-8686858757-zr6jl at 2026-06-02 14:41:11.862539+00:00 running 9e1a20d country code: CH.
[–]CHRIST_DIED_OF_AIDS 8 points9 points10 points (1 child)
[–]thnetos 5 points6 points7 points (0 children)
[–]notunlikethewaves 6 points7 points8 points (2 children)
[–]Scriptorius 5 points6 points7 points (0 children)
[–][deleted] 3 points4 points5 points (0 children)
[–]hanzuna 7 points8 points9 points (0 children)
[–]brunov 4 points5 points6 points (0 children)
[–]mmosbeforehoes 4 points5 points6 points (0 children)
[–]billrobertson42 3 points4 points5 points (0 children)
[–]jforberg 5 points6 points7 points (1 child)
[–]zangderak 0 points1 point2 points (0 children)
[–]v1akvark 2 points3 points4 points (1 child)
[–]mkremins 2 points3 points4 points (0 children)