advent-of-code/2021
2021-12-14 15:18:14 -06:00
..
deno Organize things 2021-12-13 09:53:03 -06:00
nim Day 13 done 2021-12-14 15:18:14 -06:00
zig Organize things 2021-12-13 09:53:03 -06:00
.gitignore Cleanup 2021-12-06 11:39:34 -06:00
readme.md Organize things 2021-12-13 09:53:03 -06:00

2021

This year, I've been tinkering a lot with Deno as a TypeScript runtime and have been really enjoying it. I'm hoping to write this year's AoC solutions using it.

Specifically, here's my deno --version output:

$ deno --version
deno 1.16.3 (release, x86_64-unknown-linux-gnu)
v8 9.7.106.5
typescript 4.4.2

Enjoy!

EDIT: Since performance is not what I would like, it looks like I'm also doing some of these in Nim.

$ nim --version
Nim Compiler Version 1.6.0 [Linux: amd64]
Compiled at 2021-10-19
Copyright (c) 2006-2021 by Andreas Rumpf

git hash: 727c6378d2464090564dbcd9bc8b9ac648467e38
active boot switches: -d:release

Usage

Run these solutions like so:

deno run --unstable --allow-all $DAY.ts

And the Nim ones like so:

nim c -d:release -d:ssl --run day$DAY.nim

And if you want to measure memory usage with Deno programs:

mkdir -p build
deno compile --output build/$DAY --unstable --allow-all $DAY.ts
/usr/bin/time -v ./build/$DAY

Or for Nim programs:

mkdir -p build
nim c -d:release -d:ssl --outdir:build day$DAY.nim
/usr/bin/time -v ./day$DAY

Days

  • Day 1: Deno, Nim
  • Day 2: Deno, Nim
  • Day 3: Deno, Nim
  • Day 4: Nim
  • Day 5: Nim
  • Day 6: Nim
  • Day 7: Nim
  • Day 8: Nim
  • Day 9
  • Day 10
  • Day 11
  • Day 12
  • Day 13
  • Day 14
  • Day 15
  • Day 16
  • Day 17
  • Day 18
  • Day 19
  • Day 20
  • Day 21
  • Day 22
  • Day 23
  • Day 24
  • Day 25