-
Advent of Code 2020 Day 5: Binary Boarding
Day 5 presented another fun puzzle. The problem: you’ve been given instructions to find your seat on a plane, but the instructions use Binary Space Partitioning. By repeatedly dividing the cabin into halves and choosing a half each time, you can go from a series of :front and :backs to...
-
Advent of Code 2020 Day 4: Passport Processing
Day 4 is when things start to get interesting. This puzzle is all data validation, this time checking passports. The first challenge asks you for a set of fields that must be present in a passport; part 2 adds more sophisticated validation to the field formats. You can view my...
-
Advent of Code 2020 Day 3: Toboggan Trajectory
Day 3 sees us riding a toboggan down a slope in the hope of catching our flight. A pleasing puzzle - I spent most of my time wrestling with parsing though. Once parsed it was no trouble. You can find my solution on my GitHub. Our input is a map...
-
Advent of Code 2020 Day 2: Password Philosophy
Day 2 of Advent of Code introduced some challenges: namely, parsing. The exercise was to read in a series of passwords from an input file (sensing a theme here) and validate them, returning the number of valid passwords. Passwords were structured like this: 1-3 a: abcde 1-3 b: cdefg 2-9...
-
Advent of Code 2020 Day 1: Report repair
Every year, Advent of Code runs a series of coding challenges in the form of an advent calendar: 25 puzzles, getting progressively harder as the month goes on. This year, I’m having a crack at it in Clojure, because Clojure is cool. You can find all my solutions on my...
-
Iterators and for loops with Guile Scheme
I’ve been very slowly working towards procedurally generating space stations using Guile Scheme, the GNU Project’s implementation of Scheme and its official scripting language. Scheme is a minimal language by design, and I have found it lacking proper support for iterative for loops, which are very useful in procedural generation....