Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/spamegg1/advent-of-code-2023-scala
Advent of Code 2023 in Scala
https://github.com/spamegg1/advent-of-code-2023-scala
advent-of-code advent-of-code-2023 adventofcode adventofcode2023 aoc-2023 aoc-2023-in-scala aoc2023 metals scala scala-cli scala3 vscode
Last synced: 21 days ago
JSON representation
Advent of Code 2023 in Scala
- Host: GitHub
- URL: https://github.com/spamegg1/advent-of-code-2023-scala
- Owner: spamegg1
- License: agpl-3.0
- Created: 2023-11-30T08:37:01.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-06-27T22:40:32.000Z (4 months ago)
- Last Synced: 2024-06-28T00:54:53.746Z (4 months ago)
- Topics: advent-of-code, advent-of-code-2023, adventofcode, adventofcode2023, aoc-2023, aoc-2023-in-scala, aoc2023, metals, scala, scala-cli, scala3, vscode
- Language: Scala
- Homepage:
- Size: 397 KB
- Stars: 2
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# advent-of-code-2023-scala
# Intro
Happy New Year everyone! :christmas_tree: :santa: :fireworks: :sparkler: :confetti_ball: :tada:Solving [Advent of Code 2023](https://adventofcode.com/2023/) from December 1 to December 25, 2023, in [Scala](https://www.scala-lang.org/download/).
Using [Scala-cli](https://scala-cli.virtuslab.org/) with [Visual Studio Code](https://code.visualstudio.com/) and [Metals](https://marketplace.visualstudio.com/items?itemName=scalameta.metals) extension.
# Setup
To setup, install Scala, VS Code, Metals, `git` and `scala-cli`. Then```bash
git clone https://github.com/spamegg1/advent-of-code-2023-scala
cd advent-of-code-2023-scala
scala-cli setup-ide .
code .
```
# Usage
I setup 25 empty worksheets, one for each day. You can use the `main` branch as a "blank template".## Libraries
I setup this to be a Scala-cli project using the [Scala Toolkit](https://docs.scala-lang.org/toolkit/introduction.html).For example, for the puzzles that require file input / output, you can use [`os-lib`](https://docs.scala-lang.org/toolkit/os-read-file.html) that comes with the Toolkit.
## Solutions
I will post solutions on the `solutions` branch, keeping the `main` branch empty.