Advent of Code challenges in Common Lisp
Find a file
2024-12-03 11:57:39 +01:00
src solved day 3 2024-12-03 08:13:45 +01:00
tests solved day 3 2024-12-03 08:13:45 +01:00
.gitignore cleaning up a bit before solving 2018/07 part 1 2024-12-01 12:36:06 +01:00
aoc.asd add day3 to asd file 2024-12-03 11:57:39 +01:00
manifest.scm add guix manifest 2024-11-29 21:50:26 +01:00
README.org add link to smug parser combinators 2024-12-03 09:08:20 +01:00

Aoc - Advent of Code challenges and solutions.

Usage

Installation

The app relies on AOC_SESSION environment variable with the session value from the cookie when logged in to the Advent of Code site. I recommend using a .envrc file and the pass password manager to store the secret :

export AOC_SESSION=$(pass snamellit/advent-of-code)

Author

Implementation Notes:

Notable Utilities

aoc:test-input <year> <day>

Fetches the test input for the given day in the given year.

Used dependencies

Dexador

A comprehensive HTTP client library.

GitHub repository with documentation

The library leverages the cl-cookie library for cookie management.

3d-vector

see github pages for 3d-vectors libraray.

offer 2, 3 and 4 component vectors

  • constructor : vec , e.g. (vec 1 2 3) > vec3
  • operators : v+, v-, v*, v/
  • operators applied on first vector : nv+, nv-, nv*, nv/
  • manhattan : v1norm
  • euclides: v2norm
Parser Combinators

Smug looks like an https://github.com/drewc/smug awesome parser combinator library.

Documentation is in org-mode which is another plus.

Copyright

Copyright (c) 2024 Peter Tillemans (pti@snamellit.com)

License

Licensed under the MIT License.