home.social

#adventofcode — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #adventofcode, aggregated by home.social.

  1. So, 11 out of 12 days completed for #AdventofCode and my thoughts for this year:
    - `nim` is probably the language I've enjoyed coding the most in.
    - `python`'s whole ecosystem of libraries just makes things so much easier. Day 10 and `scipy` just destroyed that solution (part 2 specifically)
    - `rust` annoys me, but I 100% admit that it's a skill issue on my part.

    #nim #python #rust #programming

  2. 🎄✨Ah, the annual Advent of Code ritual—where our hero bravely battles coding challenges for shiny digital stars, fueled solely by caffeine and the adoration of a dwindling community. This time, Oscar's riding high on the Gleam train, discovering that when life gives you fewer coding days, you just...gloat about the stars you've already collected. 🚀💻
    blog.tymscar.com/posts/gleamao #AdventOfCode #CoderLife #DigitalStars #CodingChallenges #GleamTrain #HackerNews #ngated

  3. CW: AoC day 10: Factory

    For this one part 1 was relatively simple (parsing was the longest task), despite my basic bruteforce solution still needing more than 2s to find an answer.

    For part 2 I was initially excited to finally implement Gaussian elimination by myself, but then realized it couldn't work because this was a minimization problem. A quick search showed me that it was an integer linear programming problem, which everyone recommended to solve with a library.
    Despite my better judgement, I convinced myself that a DFS exploration could maybe work. And it did! ... on the example.

    So in the end I caved and did it with z3 like most people. At least it seems that the z3 crate has greatly improved in the past 2 years, and my code using it is relatively simple.

    I also found this fun thing on the Z3 C documentation: social.treehouse.systems/@Aiss

    #AdventOfCode #RustLang #z3

  4. CW: Advent of Code 2025 day 12 solution

    Day 12 done.

    I really didn't like this one. Basically have to do some bounds checking "it obviously always works" or "it obviously will never work" on it to get it to work on the actual input, but it still NEVER FINISHES on the example. I'm slightly bothered that the problem is more or less unsolvable as written, but I'm really bothered by the actual solution for the input not working on the example. That's not a fun puzzle, that feels like I'm being tricked, like the puzzle was a prank on me. Leaves a real sour taste, especially being the last puzzle of this year's AoC.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day12 #Day12 #Rust #RustLang #Programming #CodingChallenges #AoC #AoC2025 #AoC2025Day12

  5. CW: Advent of Code 2025 Day 11 solution

    Day 11 done.

    Memoization actually worked for this one. My first instinct was to just crawl the graph with a memo, and it fortunately did the right thing. It was effectively an exhaustive depth-first search. Really not much to discuss.

    My code is not nice or clean, but after yesterday's, I can't even be assed to clean it up or properly comment it. I barely gathered the gumption to pass errors up, and when I started writing it, I was just throwing unwrap() everywhere.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day11 #Day11 #Rust #RustLang #Programming #CodingChallenges

  6. I've completed "Factory" - Day 10 - Advent of Code 2025

    I used Z3 to solve Part 2 in ~500ms. I still need to clean up Part 1's brute force.

    github.com/jstanden/advent-of-

    #AdventOfCode #Python #Programming #z3

  7. Day 10 part 1 done.

    Part 1 was a little tricky and fun. Solved it by just testing every combination, and sped that up by turning all the buttons and the goal light configuration into numbers that I could XOR together.

    Technically, part 2 is done too, but it will never work on the real input. I threw memoization at this thing knowing that it wasn't going to work, but thought I might get lucky and the input would be constructed in a way that it would be fine. Nope.

    I gave up and looked at the solutions thread on Reddit, and it looks like almost everybody is just throwing a solver at it (and the ones that aren't are using things like fraction-free Gaussian Elimination, which I can't hope to understand at this point in the night), and there are only 26 comments after 1.75 hours, so I guess this is a really hard problem this year.

    I might come back to it tomorrow, but I doubt I'll find a good solution on my own. I don't want to just throw a solver at it if I don't have to.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day10 #Day10 #Rust #RustLang #Programming #CodingChallenges

  8. CW: Advent of Code 2025 day 9 solution

    Day 9 done.

    This one was really hard for me. Part 1 wasn't bad at all; I could basically use the entirety of what I did yesterday for it.

    Part 2 was really hard. At first, I tried actually building a HashSet of all the red and green tiles, and then a HashSet of all the areas for each pair, and checking them against each other. Needless to say, that wouldn't work. Building the tile HashSet alone would have eaten up more memory than I have on my computer, and I should have realized that immediately looking at my answer to part 1 (which was an area of over 4 billion tiles). I thought that checking a line of green tiles through the area wouldn't necessarily work, because a malicious input could make that not work (two immediate right or left turns could make a pair of adjacent green tile lines that would still work), but it turns out that it works fine for my input. Probably all inputs.

    It works. I don't feel totally satisfied with the solution, but it works.

    I think a more robust solution could be to trace the outline and fill it with square area units, then for each area to test (ordered from largest to smallest), repeatedly cut area out of it with the green tile squares. If all overlapping areas are tested and there are still un-cut squares, the area is invalid; move on to the next. If the area is cut completely to nothing, then it is the best area. I'm not going to implement this, because it sounds like a total fiddly pain, but I would be interested in seeing somebody else's solution along these lines.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day9 #AdventOfCode2025Day09 #Day9 #Day09 #Rust #RustLang #Programming #CodingChallenges

  9. #AdventOfCode #Day8 with #rust

    I spent an inordinate amount of time on part1 because
    * imo the problem definition is wrong
    * it does matter if you put permutations or combinations in the list, even if you filter them out :(

    Part 2 is basically the same and I already did it in ruby so I'm not doing it again, at least not today.

    I wanted to do this with union-find but I have yet to get to the chapter about generics and it seems cheating to do it without it :)

    gist.github.com/riffraff/267f1

  10. Day 8 done.

    Now that's what I call Advent of Code! I'm happy with the algorithm for the most part. I'm sure it could be improved, but I paired up all boxes and pushed them into a BinaryHeap based on their squared distances, then popped the number based on the number of connections to consider (1000 for the real input). These I pushed into a set of "network" HashSets. This is the part I'm least happy with. I iterate the vector of networks to match each point to a network, and if they're both in a network, I extend the earlier one from the later and remove the later. I considered a lot of ways to improve this, but couldn't come up with one that wouldn't be either buggy or inefficient. I'll probably look at the Reddit solutions thread to see how other people tackled it.

    Part 2 was really similar in execution to part 1, but continuing until all points were in a network and there was only one network, and keeping track of the last pair added.

    Whew, this one was just the right amount of challenging and fun. Most of the days were pretty easy before today's. Now all we're missing is a nice A* problem.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day8 #AdventOfCode2025Day08 #Day8 #Day08 #Rust #RustLang #Programming #CodingChallenges

  11. A quick comparison using `hyperfine` for some benchmarking on the #adventofcode 2025 Day 1 solution. Not too shabby for any of the solutions, and its interesting to compare them.

    #rust #nim #python #adventofcode2025 #programming

  12. CW: Advent of Code Solution - Day 7 (Nim)

    I'm so glad I'm writing the solutions in both #nim and Python because I tend to find ways to improve the Python solution with the Nim one and vice versa. Today was one of those days. The biggest thing I learned though is that solving these damned puzzles exhausted will never lead to good things quality-wise.

    Solution: git.jamesthebard.net/jweatherl

    #aoc #aoc2025 #adventofcode #adventofcode2025 #programming #nim

  13. CW: Advent of Code 2025 day 7 solution

    Day 7 done.

    Typical "don't even try brute-forcing it" part 2. I kept track of the timeline count as I worked my way vertically down the graph, and then added up the beams' shared timelines at the end. I also considered that dynamic programming with a recursive solution would probably have worked fine as well, but went for the approach that most matched the way I was already doing it.

    I'll probably follow up with the dynamic programming approach, just for fun.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day7 #AdventOfCode2025Day07 #Day7 #Day07 #Rust #RustLang #Programming #CodingChallenges

  14. CW: Spoilers for Advent of Code day 7

    Up until now it feels like the advent of code problems were designed for array languages.

    There are certainly problems that takes multiple lines of code to solve (some of the early problems last year had that property). We'll see what happens in the next few days, but this one was remarkably concise when solved in Kap.

    Here are two separate functions that solve the two parts:

    ∇ solveDay7part1 {
    f ← @.≠ io:read "part07.txt"
    +/ ∊ (1↓f) ∧ ¯1↓ { (⍺>⍵) ∨ ∨/ ¯1 1 ⌽¨ ⊂⍺∧⍵ }\ f
    }

    ∇ solveDay7part2 {
    +/ { (⍺×~⍵) + +/ ¯1 1 ⌽¨ ⊂⍺×⍵ }/ @.≠ io:read "part07.txt"
    }

    Part 2 was even shorter than part 1.

    In both problems, the general approach is the same: Iterate over the rows, and update the correct state based on the locations of the splitters.

    The second problem keeps track of the number of ways in which a certain cell can be reached, which means that the location of a beam is no longer just a boolean value, but a number indicating the number of ways in which this position can be reached. The result is then simply the sum of all beam values in the last row.

    I also note that so far, most of the problems have not had weird edge cases. For example, in today's problem there were no cases of two splitters next to each other, or were there any splitters at the beginning or end of a line. If that had been the case, the solutions would be a bit more complicated.

    #adventofcode #programming #kap #apl

  15. Solved #AdventOfCode day 6 part 2 in #Janet with this consice PEG parser and some math. #programming

    ```janet
    {:main (sequence :num-rows :op-row -1)
    :num-rows (group (some :num-row))
    :num-row (group (sequence (some :num-entry) "\n"))
    :num-entry (sequence :blank (some (number :d)) :blank)))
    :blank (any (replace " " 0))
    :op-row (group (some (sequence :op (opt (some :s)))))
    :op (choice (replace "*" :mult) (replace "+" :add))}
    ```

  16. CW: Advent of Code Solution - Day 6 (Nim)

    This one took a smidge more thought as I can't abuse `zip` to rotate 2D sequences. However, just rewrote the rotation as a proc and used that. Instead of `reduce`, it was all `foldl`, and I fought with `char` vs `string` due to some of the processing operations between the normal and cephalopod problem processing.

    Overall, definitely a fun solve.

    Solution: git.jamesthebard.net/jweatherl

    #aoc #aoc2025 #adventofcode #adventofcode2025 #programming #nim

  17. CW: Spoilers for Advent of Code day 6

    Day 6 was interesting. In part 2, you have to parse text vertically, in a way where array languages really shines (transposition of 2-dimensional data is just a single character).

    The solution I came up with is... ok... I guess? It feels it should be possible to do it much more concisely than I did it, and I've seen solutions in other languages that are on the same order of magnitude in size compared to the Kap solution, which is not something you see very often.

    In particular, I saw an amazing Ruby solution that puts mine to shame, and I say that even though I don't even know much Ruby and never really liked it that much.

    I am kind of happy with the way I implemented the operation selection. I take advantage of the case function (docs). It computes both the sums and the multiplications, and then uses case to pick the correct set of results.

    Kap can do this without computing the double computing results, since the results of the sums are lazy, and the individual results will only be computed when the result is read.

    codeberg.org/loke/advent-of-co

    #adventofcode #programming #kap #apl

  18. @CGM I never heard of #SASL! I have always been a huge #Wirth fan. Did tons of real-life work in #Pascal, moved through #Modula2 up to, finally, #Oberon2. Had such fond memories of it that I tried to use it last year for #AdventOfCode and learned that it was not nearly as good as I remembered. Have you tried #Racket (a kind of #Scheme)? It’s not for me but it’s interesting. Used it in a job interview once. Your description of how flow control is defined in #TCL really reminds me of Racket. I’m learning #RustLang and having the kind of #Macros you get in #Lisp and Scheme is another reason Rust is so enjoyable.

  19. @CGM I never heard of #SASL! I have always been a huge #Wirth fan. Did tons of real-life work in #Pascal, moved through #Modula2 up to, finally, #Oberon2. Had such fond memories of it that I tried to use it last year for #AdventOfCode and learned that it was not nearly as good as I remembered. Have you tried #Racket (a kind of #Scheme)? It’s not for me but it’s interesting. Used it in a job interview once. Your description of how flow control is defined in #TCL really reminds me of Racket. I’m learning #RustLang and having the kind of #Macros you get in #Lisp and Scheme is another reason Rust is so enjoyable.

  20. @CGM I never heard of ! I have always been a huge fan. Did tons of real-life work in , moved through up to, finally, . Had such fond memories of it that I tried to use it last year for and learned that it was not nearly as good as I remembered. Have you tried (a kind of )? It’s not for me but it’s interesting. Used it in a job interview once. Your description of how flow control is defined in really reminds me of Racket. I’m learning and having the kind of you get in and Scheme is another reason Rust is so enjoyable.

  21. CW: Advent of Code 2025 Day 6 solution

    Day 6 done.

    This was a funky one. Pretty easy for part 1. Just trimming, splitting, and parsing all the numbers and operators and grouping them columnwise. Nothing too hard.

    Part 2 was awkward. I always am a bit flustered when I have to go back and parse the input differently, especially because I build things around FromStr in Rust, so I have to do either a Part2Input for the second part or a separate parsing function. This one was fiddly because I tried to parse it into the same Input structure as before, but that didn't work because not all the equations had the same quantity of numbers this time. I also wanted to do some sort of zip that let me zip over an iterator of iterators, but I couldn't find a good way of zipping a dynamic number of iterators, even in itertools (it has multizip, but that only works on a compiletime number of iterators). In the end, I needed to do this awkward loop:

    number_buffer.clear();
    for number_line_iterator in &mut number_line_iterators {
        match number_line_iterator.next() {
            Some(digit) => number_buffer.push(digit),
            None => {
                equations.push(Equation {
                    numbers: numbers,
                    operator: operators.next().unwrap(),
                });
                break 'outer;
            }
        }
    }
    

    Not the prettiest, but it did get the job done.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day6 #AdventOfCode2025Day06 #Day6 #Day06 #Rust #RustLang #Programming #codingchallenges

  22. Well … I get symbol renaming if I use as my

  23. It seems like my #Pyrefly problem isn’t related to my #AdventOfCode project. Before pyrefly, I could rename a symbol throughout the project. With pyrefly, I can’t. More investigation needed.

  24. Advent of Code 2025 Day 5: Cafeteria

    This is the one where it would have been really cool if the language I used had a sort function.

    westkarana.blog/2025/12/05/adv

    #AdventOfCode #Picotron #Lua #sort

  25. oh man... i am still in pain from day 3 AOC 2025 🎄 ✨
    but it works.... after scrapping my naive combinations approach (i was trying to compute 121 billion combinations and compare them, my computer glitched and shutdown haha) now i went with a greedy stack based comparison....

    codeberg.org/jjba23/aoc-2025/s

    #adventofcode #aoc #guile #scheme #guix #lisp #challenge #leetcode #functional #programming #fp #emacs #stack #greedy #push #pop

  26. CW: Advent of Code 2025 Day 5 solution

    Day 5 done. Now this one was the easiest one so far. I was shocked at how simple part 2 was. Just combining all overlapping ranges and doing some simple arithmetic. I initially tried a linear search, and it finished in 1.5ms. Then I switched to a binary search, and now it finishes in 1.7ms. Do not underestimate the power of the processor cache line. If the fresh ranges list were much larger, the binary search would have sped it up, I'm sure.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day5 #AdventOfCode2025Day05 #Day5 #Day05 #Rust #RustLang #Programming #codingchallenges

  27. Working on #AdventOfCode. My plan was to solve each day in both #Python and #RustLang. I thought I would be further by now. Yes, my Python answer to day 1 solves both parts, but I'm trying to be exemplary: good names, docstrings, comments-where-needed, tests, project structure, all the things.

    For some reason, #HelixEditor keeps complaining about the #LSP (using both #Pyrefly and #Ruff, as usual). I'm concerned I haven't set things up right somehow, but I don't yet see where I've gone wrong.

    Once this is working, further days will be easy. At least ... I hope!

  28. #AdventOfCode #Day4 with #rust

    I'm no sure I need all the usize/isize casts.
    Also, I don't get why I need a move since the value is going to be copied anyway 🤔
    I think I still don't understand how the iterations, closures, and ownership interact.
    I did learn I can use into_iter to consume a collection :)

    gist.github.com/riffraff/8dc01

    #programming

  29. CW: Advent of Code 2025 Day 4 solution

    Day 4 done. This was probably the easiest one so far, but it might be because I'm so used to the grid problems from previous years.

    I felt like just doing the count for part 1 would end up forcing me to rewrite something, so I returned the coordinates, hoping they'd come in handy for part 2. Fortunately, they did, and my part 2 was a 10-second addition, just adding a loop around the part 1 function. The whole thing runs in about 86 milliseconds. I could probably optimize it by storing a neighbor count in each live cell, decrementing those in accessible neighbors on each removal, and maybe keeping them in a sorted vector via Rc<RefCell> or an internal Cell, but I'm happy with this right now.

    Edit: I ended up doing the optimization anyway

    This runs in 10ms now. It might even run a bit faster if I make the rolls keep track of their neighbors with weak refs too, to prevent lots of extra neighbor lookups in the HashSet. I'll experiment with that a tiny bit, but I'm not going to spend all too much effort on it, and probably won't add an update unless it is a big speed boost.

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day4 #AdventOfCode2025Day04 #Day4 #Day04 #Rust #RustLang #Programming #codingchallenges

  30. CW: Spoiler for Advent of Code day 3

    We're still in the easy part of advent of code. I have still been able to solve them in a single line of code per problem.

    For part 2, I used the reduction operator for iteration. A more classic APL solution would probably use in order to conserve memory (even though in this case, you only iterate 12 times anyway, so it doesn't matter).

    In general, using / for iteration in Kap is less ugly than in APL, since Kap has lazy evaluation, so in most cases you wouldn't materialise the array you're reducing over anyway, so it's often a simpler solution than to try to bend the power operator to do what you want, which is not always obvious. At least that's my preference.

    codeberg.org/loke/advent-of-co

    #adventofcode #programming #kap #apl

  31. This time I'm solving #AdventOfCode in #Janet (I'll write about my solutions in my blog in batches) and I'm really pleased by the built-in #PEG parsers. This is how the grammar looks for day 2:

    ```janet
    {:main (sequence :ranges -1)
    :ranges (some :range)
    :range (group (sequence (number :num) "-" (number :num) (opt ",")))
    :num (some :d)}
    ```

    #programming #parsing

  32. CW: Spolers for Advent of Code day 2

    I was at work when I first read the problem. I also misread the problem such that I thought it was actually the problem as described in part 2.

    So, I spent some time thinking about a way to solve it efficiently, since I assumed there were going to be huge ranges of numbers, and I needed a way to quickly filter out values.

    When I finally took a look at the actual data, I realised that it was possible to brute-force, and the solution turned out to be much simpler.

    ∇ loadData {
    ,/ {…/⍎¨⍵}¨ (@-≠)⍛⊂¨ (@,≠)⍛⊂ ↑ io:read "part02.txt"
    }

    ∇ solveDay2Part1 {
    +/ { a←10⊤⍵ ⋄ ⍵ × ∧/=⌿ 2 ¯1 ⍴ a,(2|≢a)⍴100 }¨ loadData 0
    }

    ∇ solveDay2Part2 {
    +/ { a←10⊤⍵ ⋄ d←1,math:divisors ≢a ⋄ ⍵ × 1∊{ 1=≢∪ ¯1 ⍵ ⍴ a }¨ d }¨ (10≤)⍛/ loadData 0
    }

    #adventofcode #programming #kap #apl

  33. For the record, I'm going to yolo #AdventOfCode with #Onyx this year. It looks pretty interesting; I really wish the standard library were documented better, though!

    #OnyxLang

  34. CW: Spoilers for Advent of Code day 1

    These are my solutions for day 1. I always enjoy it when I can write the entire solution in a single line of code.

    For part 1, the majority of the code is in the conversion of the input data. In part 2, the conversion code is exactly the same, but the solution is a bit longer.

    The input conversion converts a string "L10" to -10, and "R10" to 10. Part 1 in then simply a matter of performing a sum scan over the values, take the results mod 100 and count how many zeroes there are.

    Part 2 was a bit more annoying. I solved it by creating a sequence of all numbers that is processed, meaning that L5 R2 becomes 50 49 48 47 46 45 46 47. I then take the values mod 100 and count the number of zeroes, exactly like the previous solution.

    ∇ solveDay1part1 {
    +/0=100|+\50 , (¯1+2×@L=↑)«×»(⍎↓)¨ io:read "part01.txt"
    }

    ∇ solveDay1part2 {
    +/0=100| {⍺,(↑⌽⍺)+(×⍵)×1+⍳|⍵}/ 50 , (¯1+2×@L=↑)«×»(⍎↓)¨ io:read "part01.txt"
    }

    #adventofcode #programming #kap #apl

  35. CW: Advent of Code day 1

    First day on Advent Of Code 2025, and I had to completely remind myself the difference between modulo and remainder. Already stumbled on part 2 because of how little arithmetic I have to do in my day to day work. Got through it, and the solution is pretty simple: https://forge.axfive.net/AdventOfCode/2025/src/commit/7c02d16698e949c24d7cbdc0f1661c643fcac823aee588a207b27f237b152584/src/bin/day01.rs

    #AdventOfCode #AdventOfCode2025 #AdventOfCode2025Day1 #AdventOfCode2025Day01 #Day1 #Day01 #Rust #RustLang #Programming #Coding

  36. 🎉✨ Advent of Code on the Z-Machine: Because there's nothing quite like using 1979 tech to solve modern #puzzles, right? 🤔 Let's all gather 'round the virtual campfire and pretend this is a groundbreaking idea instead of a nostalgic nod to ancient programming relics. 📟💾
    entropicthoughts.com/advent-of #AdventOfCode #ZMachine #RetroGaming #Nostalgia #ProgrammingTech #HackerNews #ngated

  37. Coming back here ... too much post-apocalyptic news and politics elsewhere.

    I'm gearing up for #AdventOfCode2025 and trying to decide which language to use. It's either

    #Pascal, which I know well.
    #Forth, which I haven't seriously looked at in a few decades.
    #Rexx, same as Forth (on *nix, not a mainframe).

    I've done AoC in Pascal, C, and Fortran in the past. All work well, but if I don't try a new language, I'll go with my first love in FPC Pascal.

    Anyone who might see this, do you have opinions/recommendations/experience with using Forth or Rexx for #AdventOfCode? I've got a month to re-familiarize myself with either Forth or Rexx.

  38. At last night’s @mug meeting we looked at a lot of different solutions to #adventofcode day 1 in many different languages. Two that were very interesting to me were #Zig and #haskell. The way these two languages worked was really quite fascinating. After seeing real code in these two languages, I can tell they are not for me; but they were interesting and illuminating nonetheless.

    There was a solution entirely in #SQL. Another in #vim9script. Another in #swiftlang #swift (I don’t think that one’s in the repo yet). I wrote several implementations myself. The one I felt most proud of is #Python with the core written in #rustlang #rust tied together with #PyO3. The one I felt was maybe the best tool for the job was entirely based on #pandas. As I said in a previous post, I tried to solve it in #polars, but the API exposed by Polars at least as far as I could tell, made it no better than simple lists in Python. I need to get deeper knowledge here.

    The repo lives here: github.com/MichiganUnixUserGro.

  39. Solved Advent of Code 2024 Day 10 using Depth-First Search (DFS) in Python. The puzzle involved navigating a heightmap and finding all paths from trailheads to peaks. A good exercise in graph traversal! #AdventOfCode #Python #DFS #GraphTraversal #OpenToWork #FediHire #getfedihired

    kitfucoda.medium.com/climbing-

  40. Birthday AoC status update.

    I'm doing #adventofcode in #dusa — but because of the way Dusa interacts with JavaScript, that can mean just doing AoC in JavaScript.

    I gave each of the 50 problems 1-5 stars, where I get 5 stars if I solve the problem "entirely" in Dusa, and 1 if I only use Javascript. Currently I have 153/200 stars. Notes at typesafety.net/rob/blog/advent

  41. I did #AdventOfCode day 5 riddle in the Android version of #GRASP, but the Scheme interpreter on Android wasn't able to handle my interface to attributes, so I had to evaluate the code in a JVM version

  42. New Hacking the Grepson podcast episode is out!

    Hacking the Grepson 082: Everybody Codes

    Matt (@messerman) and Mike (@nebyoolae) discuss an AoC-like (and -inspired) challenge called Everybody Codes.

    Episode Link: podbean.com/eas/pb-qkjj8-17615
    Show Feed: feed.podbean.com/hackingthegre
    Show Home: hackingthegrepson.com

    #HackingTheGrepson #podcast #programming #development #ebc #aoc #everybodycodes #adventofcode