Solutions to Advent of Code 2024 challenges implemented in Scala 3.
This repository contains my solutions to the Advent of Code 2024 programming puzzles. Advent of Code is an annual event featuring daily programming challenges throughout December. Each day presents a two-part puzzle that can be solved using any programming language.
This implementation focuses on:
- Learning Scala 3 features and idioms
- Building reusable utilities for common puzzle patterns
- Exploring AI-assisted development with GitHub Copilot and Codeium
- Java 11 or higher
- Mill build tool (downloaded automatically via
./mill)
# Run all solutions
./mill main.run
# Run tests
./mill main.testmain/src/aoc2024/- Daily puzzle solutions (Day01.scala through Day25.scala)main/src/util/- Reusable utility classes for common patternsmain/resources/inputs/- Puzzle input filesmain/test/src/- Test suites with sample data
For information about the architecture, design decisions, and implementation patterns, see CLAUDE.md.
Interested in contributing? Check out the CONTRIBUTING.md file for development workflow and guidelines.
- Scala 3 features: extensions, given/using, indent-based syntax
- Mill build system and Scala tooling (scalafmt, scalafix)
- Graph algorithms with
scala-graph - Linear algebra with
breeze - Geometry algorithms with
scala-corner - AI-assisted development workflows
