Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit ce8396f

Browse files
committed
Added some more pointers to libraries whose sources are instructive reading
1 parent 8001dcb commit ce8396f

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

‎README.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,9 @@ Do note that you may need to use it in trial mode or get an appropriate license
6666

6767
## Inspiring and insightful source code
6868

69+
### [Clojure Core](https://github.com/clojure/clojure/tree/master/src/clj/clojure)
70+
This one is not a surprise, but reading sources in the core Clojure library (with the clojure.core namespace being a good starting point) is highly recommended. This one comes _directly_ from the masters, and it can not get more idiomatic (and simpler, really) than this.
71+
6972
### [Monger](https://github.com/michaelklishin/monger)
7073

7174
Standard way of writing database wrappers. Monger uses official Java client for Mongo.
@@ -86,6 +89,15 @@ core.cache is Clojure contrib library. It provides in-memory implementations of
8689
- [core.cache/defcache](https://github.com/clojure/core.cache/blob/master/src/main/clojure/clojure/core/cache.clj#L67) is a macro that reduces repetition of defining a type
8790
- [This](https://github.com/clojure/core.cache/blob/master/src/main/clojure/clojure/core/cache.clj#L224) shows that mutation to cache creates a new value
8891

92+
### [clucy](https://github.com/weavejester/clucy/blob/master/src/clucy/core.clj)
93+
This one is old, but it really stands out for a few reasons as far as learning goes
94+
- A concise example that shows Java inter-op
95+
- Careful design considerations, and thus what a succinct piece of code within a single namespace can achieve.
96+
- Clever use of `meta` attributes on `vars`.
97+
98+
### [Durable Queue](https://github.com/Factual/durable-queue)
99+
This one pushes some limits on Clojure-Java interop without descending down into Java (language) land. An instructive piece of source, all within a single namespace.
100+
89101
## Links
90102
- [Clojure ground up](https://aphyr.com/tags/Clojure-from-the-ground-up))
91103
- [Clojure toolbox - list of clojure projects/libraries](https://www.clojure-toolbox.com)

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /