summaryrefslogtreecommitdiff
path: root/2025
AgeCommit message (Collapse)Author
2025-12-13feat(2025d3): copy part 1 over to part 2DJ O'Leary
2025-12-13refactor(2025d3): clean up part 1DJ O'Leary
2025-12-13fix(2025d3): fix bug in logicDJ O'Leary
Changelog: - pattern match on list with one element instead of checking is_end variable - pattern match on c_gt_? variables instead of using if statements to ensure all possiblities are covered - reuse swap_if_higher when we have (Some _, None) instead of inserting to second slot, as this was screwing with the promotion logic
2025-12-13chore(dune): also build byte code when compiling for use with ocamlearlybirdDJ O'Leary
2025-12-13docs(dune): replace template tagDJ O'Leary
2025-12-13test(2025d3): fix property testDJ O'Leary
2025-12-13test(2025d3): add property testsDJ O'Leary
2025-12-13chore(2025d3): reword failwith messageDJ O'Leary
2025-12-13chore(task): add test:suite taskDJ O'Leary
2025-12-12test(2025d3): correct expected test resultDJ O'Leary
co-author: @JohnDJOGrady
2025-12-12test(matrix): update expect test after updating pp functionDJ O'Leary
2025-12-11feat(2025d6): add skeleton for part 2DJ O'Leary
2025-12-11feat(2025d6): add solution for part 1DJ O'Leary
2025-12-11feat(2025d5): add skeleton for problemDJ O'Leary
2025-12-11feat(parser): add parser moduleDJ O'Leary
2025-12-11refactor(matrix): add to_list and make pp prettierDJ O'Leary
2025-12-11refactor(logger): remove own logger implDJ O'Leary
just use Logs directly for now
2025-12-08feat(range): implement range module for parsing ranges in the format "%d-%d"DJ O'Leary
2025-12-08feat(2025d4): solve part 2DJ O'Leary
solution: 8254
2025-12-08refactor(2025d4): refactor part 2 to prep for recursionDJ O'Leary
2025-12-08refactor(2025,ocaml): use result type for answers to allow for returning errorsDJ O'Leary
2025-12-08feat(2025d4): copy part 1 into part 2 fileDJ O'Leary
2025-12-08feat(2025d4): solve part 1DJ O'Leary
solution: 1320
2025-12-07refactor(matrix): convert matrix into domain moduleDJ O'Leary
2025-12-07fix(2025d4p1): flip x and y of matrix when pretty printingDJ O'Leary
fixes: pp_matrix
2025-12-07test(2025d4p1): add test case for solution of exampleDJ O'Leary
2025-12-07refactor(2025d4p1): add newline when printing matrix to format it betterDJ O'Leary
2025-12-07refactor(2025d4p1): document pp_matrix and add expect_test for itDJ O'Leary
test fails as of now as matrix is rotated
2025-12-07fix(2025d4p1): make points accessible as (x,y)DJ O'Leary
breaks: pp_matrix
2025-12-07feat(2025d4p1): add code to convert input into a matrix and pp the matrixDJ O'Leary
2025-12-07feat(2025d3p1): started on alternative solutionDJ O'Leary
Alternative solution is to scan each line once to find the index of the largest left-most and non-final digit. Then getting a substring of the line [idx, len) and finding the largest digit in that substring. These digits concatenated together should be the biggest 2 digit number that can be made from the line
2025-12-06feat(2025d3p1): partial solution, getting the wrong answerDJ O'Leary
Manually did entire real input and codified into tests but even sum of manual answer is wrong. Code fails for some lines of real input and these failing lines have been reduced into regression tests. work-in-progress: true
2025-12-05feat(2025d4p1): create skeletonDJ O'Leary
2025-12-05feat(logger): implement logger functorDJ O'Leary
still needs to be injected somehow
2025-12-04docs(2025d03p01): add implementation planDJ O'Leary
2025-12-04feat(2025d3p1): create skeletonDJ O'Leary
2025-12-04feat(log): add log moduleDJ O'Leary
still need to figure out how I can inject this into the application layer however
2025-12-04feat(2025d2p2): solve 2025 day 2 part 2DJ O'Leary
2025-12-03refactor(2025): update cli output to include colourDJ O'Leary
2025-12-03refactor(2025d2p1): use Seq instead of List so that elements can be ↵DJ O'Leary
transformed one at a time this reduces allocation overhead
2025-12-03feat(2025d2p2): remove existing rules and make validation rules OR instead ↵DJ O'Leary
of AND
2025-12-03feat(2025d2p2): copy part 1 solution as part 2 for editingDJ O'Leary
2025-12-03feat(2025d2p1): solve day 2 part 1DJ O'Leary
2025-12-02feat(2025d2p1): parse input into tuplesDJ O'Leary
2025-12-02fix(2025d2p1): use correct fileDJ O'Leary
2025-12-02feat(2025d2p1): setup day 2 part 1DJ O'Leary
2025-12-02refactor(cli): factor out shared codeDJ O'Leary
2025-12-02feat(2025d1p2): implement solution to problemDJ O'Leary
2025-12-02docs: fix day 1 part 1 docsDJ O'Leary
2025-12-02refactor(file): rename File_reader module to FileDJ O'Leary