All my Advent of Code repos:
- AoC 2015 in Nim, Python
- AoC 2016 in Python, Clojure (+ visualizations)
- AoC 2017 in Nim, OCaml, Python
- AoC 2018 in Nim, Python, Racket
- AoC 2019 in OCaml, Python, Clojure
- AoC 2020 in Nim, one liner-y Python, Racket
- AoC 2021 in Python, Racket
- AoC 2022 in Python, Clojure
- AoC 2023 in Clojure
- AoC 2024 in Clojure (Clerk notebooks), Python, Elixir
- AoC 2025 in Clojure (Clerk notebooks) (this repo)
This year it is a Clojure time, again.
Last year's experiment with Clerk notebooks was a success (IMO; you can see my AoC 2024 notebooks for yourself), so I'll use the notebook format once again.
To make this notebook format "work", I'll have to write the code in a different way than I usually do: I'll not just present the final solution, but the whole process from reading the input and then slowly building the required blocks until we come with the solution.
It is the best to not read the raw code in this repo. Instead, read the notebooks.
The notebooks are available at: https://narimiran.github.io/aoc2025