Clojure

Join the Clojure Track
TODO: The maintainers have not provided a description for this track.
Join the Clojure Track
Track mentors

7 Mentors

Our mentors are friendly, experienced Clojure developers who will help teach you new techniques and tricks.
Track students

3,343 Students

Join thousands of students who have enjoyed learning and improving their skills by taking this track.
Track exercises

76 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Clojure

(ns hello-world)

(defn hello
  ([] (hello "World"))
  ([name] (str "Hello, " name "!")))

Clojure is a dynamic programming language that targets the Java Virtual Machine (JVM). Designed as a general purpose language, Clojure combines the approachability of a scripting language with a robust infrastructure for multithreaded programming.

Clojure is predominantly a functional programming language, and features a rich set of immutable, persistent data structures.

Clojure is open source, and information about contributing to the language can be found here.

Rich Hickey, the creator of Clojure, wanted a modern Lisp for functional programming, symbiotic with the established Java platform, and designed for concurrency; thus, Clojure was born.

Here are a couple quotes that exemplify the goals of Clojure:

  • Good design is not about making grand plans, but about taking things apart.
  • Programming is not about typing...it's about thinking.
Join the Clojure track

Self-contained finite problems with which to learn the language

I have spent time with the Clojure, Elixir & Go tracks and all have been incredibly beneficial, providing self-contained finite problems with which to learn the language. The Go language track has been wonderful in introducing me to the language, what idiomatic code is, and the many different ways in which one can solve a problem.

Relaxed. Encouraging. Supportive.

Meet the Clojure Track mentors

Once you join the Clojure language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Matthias Wimmer

Matthias Wimmer Matthias' Blog

After being a professional Java developer for around 10 years, I started to introduce Clojure at work to improve development speed. I believe in functional programming and immutability for software quality and better code.
Avatar of Lucas Polymeris

Lucas Polymeris https://github.com/Average-user

Functional programming and Lisp enthusiast.
Avatar of Tim Hawes

Tim Hawes https://github.com/timotheosh

I love Lisp, and functional programming. I've written a few apps in Clojure, and some with heavy Java interop.
Avatar of Vlad Bokov

Vlad Bokov https://github.com/razum2um

Around 4 years of clojure experience. Author of aprint & debugger libs. Maintain awesome-clojure list and hope to get russian clojure.ru done right at some point (you can help!)
Avatar of Jesús Gómez

Jesús Gómez https://github.com/jgomo3

Considered for a new version of the legacy System I'm working with, a coworker presented Clojure to me and we found early it helps a lot on keeping complexity low with a systemic aproach to software projects. We have used in some prototypes. Still learning all I can of it, I hope I could share some knowledege of it by mentoring and learn at the same time.
Avatar of Darrell Pittman

Darrell Pittman https://github.com/darrell-pittman

20 years experience, mostly java, javascript and ruby. I love functional programming and have been studying clojure for ~6 months. I have done one small clojure project professionally.
Fun. Challenging. Interesting

Community-sourced Clojure exercises

These are a few of the 76 exercises on the Clojure track. You can see all the exercises here.

Strain
easy
misc
Beer Song
easy
misc
Allergies
easy
misc
Phone Number
easy
misc
Bank Account
easy
misc
Word Count
easy
misc
Passionate. Knowledgeable. Creative.

Meet the Clojure Track maintainers

The Clojure Maintainers are the brains behind the Clojure Track. They spend their spare time creating interesting and challenging exercises that we can all learn from. We are incredibly grateful for their hard work. Here are the bios of a few of the maintainers of this track.

Avatar of Matthaus Owens

Matthaus Owens

This maintainer has not added their bio yet.

Get started with the Clojure track. As with everything on Exercism, it's 100% free!

Join the Clojure Track