Skip to content

Latest commit

 

History

History
60 lines (49 loc) · 2.59 KB

README.md

File metadata and controls

60 lines (49 loc) · 2.59 KB

Advent of Code 2022

Usage

To run a solution:

  • Clone the repo
  • Place input/example files under input/<solution-name-without-extension>/<input-name>.txt
  • Run cargo run -- <solution-file-name> <input-name>

Currently native Rust modules and Prolog scripts are supported as solutions. The build script will generate logic for calling any day_X.rs or day_X.pl found in the src/ directory.

Rust solutions must export a solve function:

pub fn solve(_: BufReader<File>) { /* ... */ }

Prolog solutions must define a predicate run/0 and read the input file path from stdin:

run :-
    read_term(InputPath, []),
    % ...
    halt.

By default, Prolog scripts are run with scryer-prolog, but this can be overriden by setting PROLOG to a path to an interpreter.

Progress

Day Answers Rust Prolog
1 ⭐ ⭐
2 ⭐ ⭐
3 ⭐ ⭐
4 ⭐ ⭐
5 ⭐ ⭐
6 ⭐ ⭐
7 ⭐ ⭐
8 ⭐ ⭐
9 ⭐ ⭐ 🤔
10 ⭐ ⭐
11 ⭐ ⭐
12 ⭐ ⭐ 🤔
13 ⭐ ⭐
14
15
16
17
18
19
20
21 🤔
22
23
24
25
  • ✅ - correct and happy with
  • 🤔 - suboptimal/ugly solution