Edd Mann Developer

Solving the Advent of Code 2022 calendar using my own programming language, santa-lang

December has come and gone, and the dust has settled on completing the Advent of Code 2022 calendar. As highlighted in my previous post, I wanted to complete this year’s puzzles using my own programming language, santa-lang, which I have tailored to help aid in solving such problems. In this article I want to discuss this experience, how the language aided in solution development, and where additions/changes were made to improve it along the way.

Designing santa-lang, a language for solving Advent of Code puzzles

Over the past several years I have been slowly working my way through the previous Advent of Code calendars. For each calendar I opt to solve the puzzles in a new programming language, to familiarise myself with other ways of understanding and working. However, there comes a time in each calendar that I grow to dislike some aspect of the language. So I had an idea… why not give this whole programming language design a go. That way if I grow to dislike the language, I only have myself to blame!

Allocating Secret Santa's using an AWS Step Function workflow and every available Lambda runtime

Over the past several years I have taken the opportunity of allocating Secret Santa’s for members of my family as an excuse to explore different programming languages and technologies. This year has been no different, with me opting to over-engineer the problem of allocating and notifying participants by diving into AWS Step Functions and the many runtimes available on Lambda. In this post I wish to document how I went about designing the Step Function workflow, and breaking up the problem into many specific-purpose Lambda behaviours. The final implementation can be found in this GitHub repository.