← Languages

Clojure

Full course · 21 lessons

Clojure is a modern, functional Lisp dialect on the JVM. It emphasizes immutability, persistent data structures, and concurrency, with powerful macro capabilities for metaprogramming.

Knowledge Course
01

Getting Started with Clojure

Installation, the REPL, forms, namespaces, and Java interop.

45 min→
02

Values, Types, and Immutability

Immutable data, numbers, strings, keywords, and truthiness.

45 min→
03

Control Flow

if, when, cond, case, and condp.

45 min→
04

Collections

Vectors, lists, maps, and sets — the four core structures.

60 min→
05

Functions

Anonymous functions, defn, arities, and destructuring.

60 min→
06

Sequences and Transforms

map, filter, reduce, threading macros, and the seq abstraction.

60 min→
07

Recursion

loop/recur, tail calls, and building results.

60 min→
08

Lazy Sequences

Laziness, infinite sequences, and on-demand computation.

75 min→
09

Maps in Depth

Keywords as functions, update/merge, nested access, records.

60 min→
10

Error Handling

Result maps, try/catch, nil, and if-let patterns.

60 min→
11

Atoms, Refs, and Agents

Synchronous atoms, coordinated refs, and async agents.

75 min→
12

Futures, Promises, and Parallelism

Future, promise, pmap, and background tasks.

75 min→
13

Binding and Scope

def, let, destructuring, and scope rules.

60 min→
14

Higher-Order Functions

First-class functions, composition, partial, apply.

60 min→
15

Namespaces and Interop

require, refer, project layout, and Java interop.

60 min→
16

Protocols and Multimethods

Protocols, extend-type, records, and multimethods.

75 min→
17

Tooling and Testing

Leiningen, deps.edn, clojure.test, and the REPL workflow.

60 min→
18

Documentation and Metadata

Docstrings, metadata, comments, and debugging.

60 min→
19

Concurrency in Depth

The concurrency model, dynamic vars, STM, and identity.

75 min→
20

Real-World Data Pipelines

Text analysis, map-reduce, grouping, and config as data.

75 min→
21

Macros and the Ecosystem

Macros, quote/unquote, Ring/Compojure, and the community.

75 min→
Curated Resources