/adventofcode-hs-2021

Solutions to https://adventofcode.com/2021 (all but day 23, unlikely to add day 23 due to lack of interest)

Primary LanguageHaskellApache License 2.0Apache-2.0

Advent of Code

Build Status

These are my solutions to http://adventofcode.com

All solutions are written in Haskell.

Input

In general, all solutions can be invoked in both of the following ways:

  • Without command-line arguments, takes input on standard input.
  • With 1+ command-line arguments, reads input from the first, which must be the path to an input file. Arguments beyond the first are ignored.

Some may additionally support other ways:

None yet.

Closing thoughts

Day 16 was my first use of a monadic parser. The code was much easier to read than the manual parser.

Day 19 was interesting since I think it's the first time I've used the Applicative (or Monad) instance of [].

Past solutions

If you like, you may browse my 2015 solutions in:

If you like, you may browse my 2016 solutions in:

  • Ruby (complete)
  • Haskell (selected problems only, not intending to complete)

If you like, you may browse my 2017 solutions in:

  • Ruby (complete)
  • Haskell (selected problems only, not intending to complete)

If you like, you may browse my 2018 solutions in:

  • Ruby (complete)
  • Haskell (selected problems only, not intending to complete)

If you like, you may browse my 2019 solutions in:

If you like, you may browse my 2020 solutions in:

  • Ruby (complete)
  • Haskell (complete)
  • Rust (selected problems only, not intending to complete)