Rules: no spoilers.

The other rules are made up as we go along.

Share code by link to a forge, home page, pastebin (Eric Wastl has one here) or code section in a comment.

    • gerikson@awful.systemsOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      11 months ago

      Perl: https://github.com/gustafe/aoc2023/blob/main/d01-Trebuchet.pl

      thoughts

      I found this really tough for a day 1 problem. Because I don’t really know regex, I did not know the secret to finding overlapping patterns. I quickly figured out that “twone” was a possibility, because it was in the example, but then I had to find other examples and hardcode them into my split pattern.

      This isn’t general, my input doesn’t have ‘sevenine’ for example.

        • gerikson@awful.systemsOP
          link
          fedilink
          English
          arrow-up
          4
          ·
          11 months ago

          Abso-fucking-lutly. I just find sharing a link easier than wrangling code blocks.

          There are also hipster “forges” like Sourcehut, if that’s your jam.

        • self@awful.systemsM
          link
          fedilink
          English
          arrow-up
          3
          ·
          11 months ago

          absolutely — removing my dependency on GitHub has actually been a blocker on me releasing code lately, and it’s something I want to tackle when we launch that open source community. if it helps collaboration, I can provide some ultra-janky git hosting on awful.systems with the same service that hosts our infrastructure code, though this’d be just basic git and gitweb with ssh public key auth

            • gerikson@awful.systemsOP
              link
              fedilink
              English
              arrow-up
              4
              ·
              11 months ago

              Re Perl findall, I used this regex in my “clean” solution which I didn’t post because I figure it’s more honest to submit what worked, not the smart stuff you found out later.

              regex

              # find all numerals and number in English from the string $line and put them into the array @spelled my @spelled = ( $line =~ (m/(?=(\d{1}|one|two|three|four|five|six|seven|eight|nine))/g );

            • self@awful.systemsM
              link
              fedilink
              English
              arrow-up
              4
              ·
              11 months ago

              fuck yes scheme. you might have just inspired me to write some Lisp Machine Lisp solutions, since I might need a Lisp Machine codebase to test one of my side projects