Resolving the Advent of Code challenges from multiple years in multiple languages. Used for practicing different languages and approaches to the problems, and also to setup my development environment for each language.
The only dependencies to use this project is using the 'Nix' package manager. Beware, it will need a lot of storage for the multiple languages. The exercises should work at least on Linux.
The exercises can be resolved with multiple languages, not only using vanilla features but also with external libraries. Sometimes will try to make the solution as simple as possible, but other times will over-engineer the solution to practice more complex features of the language.
Also there may be some common code for all languages with utilities, shared dependencies, increasing over time. Additionally, there should be linters adding common formatting and style checks where possible.
All exercises should be runnable with scripts/run.sh which should run within
the Nix shell or in the OCI container.
Main list. These languages are specially useful for me and I have less experience with them or want to keep improving with them:
- Kotlin
- Swift
- Lua
- Ruby
- SQL/T-SQL
- Rust
Secondary list. These languages are either interesting but not as useful for me, or I have many experience with them so I would like to practice them less:
- Bash
- C++/C#/C/Objective-C
- Erlang
- Go
- Haskell
- Java
- PHP
- Python
- TypeScript
To complete a day, it needs to have at least one solution in one of the main languages list. But of course it can have as many other solutions from other languages.
These lists may change over time, which will not change the completion status of already completed days.