George Thomas
e92cc2f0d3
Minor refactors
2025-12-08 22:59:50 +00:00
George Thomas
1d22a1c188
Reformat
2025-12-08 22:59:50 +00:00
George Thomas
25efc19b31
Format
2025-12-08 22:59:50 +00:00
George Thomas
d0488726a0
Add argument to parser for disambiguating real data versus examples
...
This breaks less code than adding it to the solution functions, and is more elegant in a way.
2025-12-08 22:59:50 +00:00
George Thomas
43918c70fa
Solve day 8 part 2
2025-12-08 22:59:50 +00:00
George Thomas
c39113dd0e
Add day 8 part 2 example output
2025-12-08 22:59:50 +00:00
George Thomas
b0a191edb9
Solve day 8 part 1
2025-12-08 22:59:50 +00:00
George Thomas
f12e7b6e36
Solve day 7 part 2
2025-12-08 22:59:50 +00:00
George Thomas
423ad9821c
Add day 7 part 2 example output
2025-12-08 22:59:50 +00:00
George Thomas
f6f0fc171f
Solve day 7 part 1
2025-12-08 22:59:50 +00:00
George Thomas
5539a4bd05
Solve day 6 part 1
2025-12-08 22:59:35 +00:00
George Thomas
cb86dad006
Initialise day 8
2025-12-08 13:41:19 +00:00
George Thomas
3412b04af1
Initialise day 7
2025-12-08 13:41:19 +00:00
George Thomas
f1db760379
Initialise day 6
2025-12-08 13:27:50 +00:00
George Thomas
371bddf748
Use custom prelude
2025-12-08 12:48:49 +00:00
George Thomas
ef731df494
Remove duplicate in dependency list
2025-12-08 11:53:14 +00:00
George Thomas
67180c098f
Solve day 5 part 2
2025-12-05 16:54:25 +00:00
George Thomas
1429445efe
Simplify day 5 part 1
2025-12-05 16:54:25 +00:00
George Thomas
7ba96ee3e5
Shorten test name for cleaner CLI output
2025-12-05 13:49:04 +00:00
George Thomas
e6bf315716
Add day 5 part 2 example output
2025-12-05 13:18:01 +00:00
George Thomas
62be96ed57
Solve day 5 part 1
2025-12-05 13:16:33 +00:00
George Thomas
3742e1d254
Initialise day 5
2025-12-05 12:56:40 +00:00
George Thomas
ef342a1483
Refactor day 4 and add extra tests
2025-12-05 12:09:49 +00:00
George Thomas
be0a6510d8
Use lazy text for test outputs
...
Simplifies encoding code slightly, and potentially saves a lot of time for failing tests. Plus we've always been using `T.show` in practice anyway, so it's an easy change to make.
2025-12-04 21:24:49 +00:00
George Thomas
f91824a6a9
Add some useful inputs to extraTests
2025-12-04 21:17:50 +00:00
George Thomas
2f35bd9251
Format
2025-12-04 21:17:50 +00:00
George Thomas
8f67916e1a
Add way to specify extra tests
2025-12-04 21:17:50 +00:00
George Thomas
0508947a65
Solve day 4 part 2
2025-12-04 20:00:53 +00:00
George Thomas
649f06821b
Add day 4 part 2 example output
2025-12-04 18:02:57 +00:00
George Thomas
9137e7cd66
Solve day 4 part 1
2025-12-04 18:02:57 +00:00
George Thomas
dea25e3359
Add some useful dependencies
2025-12-04 11:14:31 +00:00
George Thomas
0844d4af2f
Initialise day 4
2025-12-04 10:00:15 +00:00
George Thomas
beaacd3e03
Reformat
2025-12-04 09:53:37 +00:00
George Thomas
6727a0a301
Reformat flake outputs
2025-12-04 09:52:28 +00:00
George Thomas
7758ab39a8
Reformat flake inputs
2025-12-04 09:51:26 +00:00
George Thomas
23c0777425
Fix Rust Analyzer
...
Previously we had warnings about sysroot, and limited feedback. This fix is from the Crane docs section about building standard library crates.
2025-12-04 09:50:55 +00:00
George Thomas
a81d622125
Refactor day 1 to make more use of state monad
2025-12-03 17:52:23 +00:00
George Thomas
b9e886c4e4
Solve day 3 part 2
2025-12-03 17:13:47 +00:00
George Thomas
fde8efee8c
Add day 3 part 2 example output
2025-12-03 15:57:01 +00:00
George Thomas
2c1edfcfb6
Defer type errors
2025-12-03 15:56:56 +00:00
George Thomas
94c9838371
Add some useful extensions
2025-12-03 15:56:56 +00:00
George Thomas
f296e3d5a7
Solve day 3 part 1
2025-12-03 15:56:56 +00:00
George Thomas
b99bacc1e3
Initialise day 3
2025-12-03 11:18:04 +00:00
George Thomas
238e26dccf
Move all Rust stuff in to subdirectory
2025-12-02 18:38:21 +00:00
George Thomas
3a00dc568f
Rename Rust source folder
2025-12-02 18:38:09 +00:00
George Thomas
2950ff778e
Add simple Rust Crane project
...
The Nix code is taken from the Crane docs, and adapted for merging with the existing Haskell.Nix flake. The other files are from `cargo init`, with minor modifications, and `cargo generate-lockfile`.
The default dev shell contains tools for both languages.
We can now run `nix build .#rust` and `nix build .#haskell`, where the latter was previously `nix build .#aoc:exe:aoc`.
2025-12-02 16:42:44 +00:00
George Thomas
83b994965d
Use consistent naming convention for puzzles
2025-12-02 15:22:21 +00:00
George Thomas
f0c2b8ca02
Move code out to separate modules
2025-12-02 15:19:11 +00:00
George Thomas
b7c17c2d32
Sort dependencies
2025-12-02 15:05:31 +00:00
George Thomas
3b093aac23
Use named directory for Haskell source
...
Makes way for other languages.
2025-12-02 14:59:15 +00:00