{"size": 1994, "ext": "scrbl", "max_stars_repo_path": "aoc-racket.scrbl", "max_stars_repo_name": "mbutterick/aoc-racket", "max_stars_repo_stars_event_min_datetime": "2016-12-14T19:01:47.000Z", "max_stars_repo_stars_event_max_datetime": "2021-12-06T15:26:54.000Z", "max_issues_repo_path": "aoc-racket.scrbl", "max_issues_repo_name": "mbutterick/aoc-racket", "max_issues_repo_issues_event_min_datetime": "2016-08-01T05:19:52.000Z", "max_issues_repo_issues_event_max_datetime": "2017-01-07T07:47:43.000Z", "max_forks_repo_path": "aoc-racket.scrbl", "max_forks_repo_name": "mbutterick/aoc-racket", "max_forks_repo_forks_event_min_datetime": "2016-01-04T02:01:26.000Z", "max_forks_repo_forks_event_max_datetime": "2016-12-29T12:20:37.000Z"}
{"max_stars_count": 37, "max_issues_count": 4, "max_forks_count": 3, "avg_line_length": 39.0980392157, "max_line_length": 213, "alphanum_fraction": 0.74222668}
#lang scribble/manual
@(require (for-label racket rackunit sugar/list) aoc-racket/helper)

@title{Advent of Code: solutions & explanations}

@author[(author+email "Matthew Butterick" "mb@mbtype.com")]

@defmodule[aoc-racket]

@italic{Dedicated to curious characters everywhere, especially those learning Racket.}

@link["http://adventofcode.com"]{Advent of Code} is a series of programming puzzles designed by @link["http://was.tl"]{Eric Wastl}.

I find that programming puzzles are a good way of learning something new about a programming language, or learning how to do certain things better. Documenting these solutions helped me nail down some discoveries.

Thank you to Eric Wastl. If you like Advent of Code, please @link["http://adventofcode.com/about"]{pay him for it}.

You can install this package (if you haven't already) with

@tt{raco pkg install aoc-racket}

@local-table-of-contents[]

@include-section[(submod "day01.rkt" doc)]
@include-section[(submod "day02.rkt" doc)]
@include-section[(submod "day03.rkt" doc)]
@include-section[(submod "day04.rkt" doc)]
@include-section[(submod "day05.rkt" doc)]
@include-section[(submod "day06.rkt" doc)]
@include-section[(submod "day07.rkt" doc)]
@include-section[(submod "day08.rkt" doc)]
@include-section[(submod "day09.rkt" doc)]
@include-section[(submod "day10.rkt" doc)]
@include-section[(submod "day11.rkt" doc)]
@include-section[(submod "day12.rkt" doc)]
@include-section[(submod "day13.rkt" doc)]
@include-section[(submod "day14.rkt" doc)]
@include-section[(submod "day15.rkt" doc)]
@include-section[(submod "day16.rkt" doc)]
@include-section[(submod "day17.rkt" doc)]
@include-section[(submod "day18.rkt" doc)]
@include-section[(submod "day19.rkt" doc)]
@include-section[(submod "day20.rkt" doc)]
@include-section[(submod "day21.rkt" doc)]
@include-section[(submod "day22.rkt" doc)]
@include-section[(submod "day23.rkt" doc)]
@include-section[(submod "day24.rkt" doc)]
@include-section[(submod "day25.rkt" doc)]


@index-section[]