165 Commits

Author SHA1 Message Date
George Thomas
6ca7b4eac8 Match digitsToInt to simpler Rust version 2025-12-13 11:24:46 +00:00
George Thomas
dbeac46212 Format imports 2025-12-13 11:19:54 +00:00
George Thomas
cdc54a27aa Solve day 10 part 1 2025-12-11 11:34:36 +00:00
George Thomas
4b45590f37 Initialise day 10 2025-12-10 22:30:41 +00:00
George Thomas
c4c2c82f81 Remove redundant type annotation 2025-12-10 21:58:57 +00:00
George Thomas
e6d26cab45 Avoid using separate Hix file 2025-12-10 14:31:44 +00:00
George Thomas
415ed20dd5 Use Nom for Rust parsing 2025-12-10 12:39:12 +00:00
George Thomas
fa6f734286 Solve day 2 in Rust 2025-12-10 10:51:30 +00:00
George Thomas
f91e0b5bdf Add command line tools for running code on file change 2025-12-10 09:46:41 +00:00
George Thomas
b438db7d53 Rename square type to rectangle 2025-12-09 19:50:35 +00:00
George Thomas
abda4f84d8 Solve day 1 in Rust 2025-12-09 19:18:28 +00:00
George Thomas
2aab786dba Add trailing newlines to output for cleaner test diffs 2025-12-09 19:18:23 +00:00
George Thomas
57c1613019 Move output showing to main entry point 2025-12-09 16:57:05 +00:00
George Thomas
6e851d63f0 Show diff for golden test failures 2025-12-09 16:47:12 +00:00
George Thomas
2862457529 Solve day 9 part 2 2025-12-09 13:37:39 +00:00
George Thomas
0e2a3c81ac Correct error message 2025-12-09 13:35:54 +00:00
George Thomas
3744f41b5f Add day 9 part 2 example output 2025-12-09 13:35:54 +00:00
George Thomas
e85429629f Generalise allUnorderedPairs
Now that it's in the prelude, the desire to remove diagonals is less obvious than it was.
2025-12-09 13:35:54 +00:00
George Thomas
c608e21e26 Solve day 9 part 1 2025-12-09 13:35:54 +00:00
George Thomas
ce70643476 Initialise day 9 2025-12-09 10:27:50 +00:00
George Thomas
a258b30eae Disable implicit prelude 2025-12-09 00:28:09 +00:00
George Thomas
02fbb8c0be Minor refactor 2025-12-09 00:26:22 +00:00
George Thomas
1e3ed16971 Avoid unsafe list indexing 2025-12-09 00:02:54 +00:00
George Thomas
ea64a5af3e Consistently use separator parsing combinators in infix form 2025-12-08 23:44:43 +00:00
George Thomas
832b85fb7b Solve day 8 part 2 2025-12-08 23:38:48 +00:00
George Thomas
1e9e70fe10 Add day 6 part 2 example output 2025-12-08 23:01:20 +00:00
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