Here is a collection of katas to learn the Clojure programming language.
All projects need Leiningen.
At first, it might be a good start to check out the ClojureScript Koans, where you can interactively test out Clojure / ClojureScript and get familiar with the syntax.
After this, you can use the katas from this repository or browse to exercism.io to get more exercises.
We try to keep all projects up to date. Currently, they are all equipped with
lein test-refresh which can be
used to automatically execute the tests when you changed a file. Your IDE /
Editor might have the same feature, like cider-auto-test-mode
. Start lein
test-refresh with the command
lein test-refresh
The projects also are shipped with the embedded editor Nightlight. This is a Web-IDE, which runs directly in your code. It is available as a Leiningen-Plugin and you can start it with
lein nightlight
Navigate to http://localhost:4000 and start hacking with an IDE and the InstaREPL.
All projects have their own descriptions with some hints to solve them. Make sure to read their README-files.
This repository contains several katas. Here are some advices where to get started:
These katas are very easy for beginners:
- Roman Numerals: First tests given, test-driven development style. Convert integer to roman-numeral-styled Strings.
- Rover: Implement a mars rover. Contains a nice graphical implementation
- Game of Life: Applying the basic rules of game of life
- Gilded Rose: Refactor crowded code
- Tiny Maze: Find your way through a maze
- Die Hard: Die-hard sale with some edge-cases
Katas designed to learn clojure.spec:
- Codebreaker: First write your specs, then the code!