Skip to content

0xmycf/Advent-of-code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advent of Code

Isn't it the most wonderful and joyful time of the year?

2024

Multi language year! (No Forther this year... I didn't get to a point where I could use it for AOC yet.)

Day Language Solution Reflection
1 bash! Bash I dont like bash (but I learned a ton (which says a lot about my bash knowledge))
2 fish! fish I like fish. But erasing a variable is written and not set -e tmp set -e $tmp. I should also re-read the assignment from time to time so i dont waste a lot of time trying to do the opposite of what the assignment is asking.
3 "R"! R I didn't learn much about R today. Using DFA's to solve 2024 Day 3
4 TCL?! / /
5 Julia?! / /
6 Dart! Dart Dart was the most fun (outside of Haskell) I had so far. Pretty enjoyable langauge.
7 C?! Haskell Haskell I couldnt bring myself to write this in C...
8 Gleam! Gleam It took soo long to set everything up... At this point I am not sure if I want to continue the polyglot run...
9 LISP?! Haskell I started using Clojure, but I don't think I can manage this problem in a immutable, functional language i dont know. But I'll try. Clojure is lots of fun. This is also the first time I've been using Vectors et al in Haskell.
10 Ruby! Ruby 3 Pretty fun and straight forward. Solved part b before I solved part a
11 TS! Typescript and Haskell Typescript annoyed me so much, that I re-wrote the whole thing in haskell and debugged it there. Both solutions are identical in its core
12 Scala?! / /
13 Zig?! / /
14 Ocaml?! / /
15 Java! Java Same stuff as Dart, literally nothing fancy but boilerplate...
16 Rust?! / /
17 Python?! / /
18 Go?! / /
19 "Lua"! 'Lua' NFA's?! Lua does not have proper regexes, so I kind of used something else to actually solve it...
20 C++?! / /
21 C#?! / /
22 PHP?! / /
23 Lean?! / /
24 Haskell! / /
25 Haskell! / /

2023

I'll do it in a few different langauges this year, depending on my mood (or if I think I have to do some more studying on R/Java).

Day Language Solution Reflection
1 Haskell, R (only a) Haskell, incomplete and messy R Not a day that favours functional programming
2 Haskell Haskell Very nice. Used a semigroup instance and lots of datatypes :handsup:
3 Haskell Haskell Very quick and dirty, did not bother too look over it again. The solutions was quite straight forward though. Compared to the previous day 3 problems this seems quite bloated.
4 Haskell Haskell This is where Haskell's laziness shines. I was unable to get the tie (tying the knot) and got some inspiration of the internet. My basic idea was correct though and I was really close to the real solution
5 Gleam Gleam (only a so far) Trying out gleam, use can be quite handy, but also quite confusing.
6 idk yet / /
7 idk yet / /
8 idk yet / /
9 idk yet / /
10 idk yet / /
11 idk yet / /
12 idk yet / /
13 idk yet / /
14 idk yet / /
15 idk yet / /
16 idk yet / /
17 idk yet / /
18 idk yet / /
19 idk yet / /
20 idk yet / /
21 idk yet / /
22 idk yet / /
23 idk yet / /
24 idk yet / /
25 idk yet / /

2022

  • Day 1 | No Reflection
  • Day 2 | Reflection
  • Day 3 | No Reflection
  • Day 4 | No Reflection
  • Day 5 | No Reflection (But the parsing took too long lol) (also covid edition :( )
  • Day 6 | No Reflection
  • Day 7 | No Reflection
  • Day 8 | For some reason I did not want to use brainpower on this one, so its not really nice.
  • Day 9 | This Day took me too long.. First my snake was too short and then I couldn't figure out where I would need the sgn function... A little bug chocked me almost to death today...
  • Day 10 | Tried to use lenses today, went well but the solution is really verbose. (Part B can only be run from ghci)
  • Day 11 | Huh, Part a was harder.
  • Day 12 | No Reflection
  • Day 13 | I think using sort was cheating but oh well.
  • Day 14 | This one was slow, but is fast now.
  • Day 15 | This one was slow and is still slow.
  • Day 16 soon?
  • Day 17 soon
  • Day 18 | Eh, its okay.
  • Day 19 | Slow, the GC uses the most time here too. I watched this video and oriented myself on it (Because I am bad at optimizing things).. I might come back in the future and make it faster.
  • Day 20 soon
  • Day 21 | Part B was trivial in Haskell (tying the knot), I used the guessing game strategy for part b, because I did not want to think about this too hard today.
  • Day 22 soon
  • Day 23 soon
  • Day 25 soon
  • Day 25 | Hmpf, one of those days that took me longer than it should have.

Day 1 | Great start to learn BQN!

Day 1 | Is this how you do lua?

Everything is CC-BY-SA-NC unless otherwise specified. Any used library or package might have their own licence.