Day | Part One | Part Two | ||
---|---|---|---|---|
TypeScript | Rust | TypeScript | Rust | |
Day 1 | 0.37ms | 3.4ms | ||
Day 2 | 2.6ms | 2ms | ||
Day 3 | 0.3ms | 0.6ms | ||
Day 4 | 5.6ms | 7.8ms | ||
Day 5 | 4ms | 4ms | ||
Day 6 | 1ms | 2.2ms | ||
Day 7 | 41ms | 3.9ms | ||
Day 8 | 0.67ms | 5ms | ||
Day 9 | 2.7ms | 2.8ms | ||
Day 10 | 0.4ms | 0.3ms | ||
Day 11 | 900ms | 1300ms | ||
Day 12 | 1.07ms | 1.07ms | ||
Day 13 | 0.22ms | 0.4ms | ||
Day 14 | 1.22ms | 78.17ms | ||
Day 15 | ||||
Day 16 | ||||
Day 17 | ||||
Day 18 | ||||
Day 19 | ||||
Day 20 | ||||
Day 21 | ||||
Day 22 | ||||
Day 23 | ||||
Day 24 | ||||
Day 25 |
Day | Part One | Part Two | ||
---|---|---|---|---|
TypeScript | Rust | TypeScript | Rust | |
Day 1 | 0.3ms | 1.6μs* | 0.39ms | 3.6μs* |
Day 2 | 0.25ms | 2.2μs* | 11ms | 1ms* |
Day 3 | 154ms | 151ms | ||
Day 4 | 62ms | 77ms | ||
Day 5 | 1.2ms | 1.25ms | ||
Day 6 | 526ms | 35ms | ||
Day 7 | 9.4ms | 13.5ms | ||
Day 8 | 2.3ms | 3.26ms | ||
Day 9 | 1.62ms | 107ms | ||
Day 10 | 61ms | 64ms | ||
Day 11 | 44ms | 10ms | ||
Day 12 | 3ms | 89ms | ||
Day 13 | 16ms | 223ms | ||
Day 14 | 22ms | |||
Day 15 | ||||
Day 16 | 1081ms | |||
Day 17 | 42ms | 110ms | ||
Day 18 | ||||
Day 19 | 391ms | 905ms | ||
Day 20 | ||||
Day 21 | 23ms | 168ms | ||
Day 22 | 164ms | 1ms | ||
Day 23 | 38ms | 146ms | ||
Day 24 | 3ms | 741ms | ||
Day 25 |
Day | Part One | Part Two | ||
---|---|---|---|---|
TypeScript | Rust | TypeScript | Rust | |
Day 1 | 0.9ms | 13μs | 10ms | 12.2μs |
Day 2 | 9ms | 9.6ms | ||
Day 3 | 265ms | 234ms | ||
Day 4 | 6ms | 4ms | ||
Day 5 | 15ms 🌟 | 326ms | ||
Day 6 | 230ms | 46ms | ||
Day 7 | 1ms | 24ms | ||
Day 8 | 6ms 🌟 | 6ms | ||
Day 9 | 274ms | 274ms | ||
Day 10 | 305ms | 305ms | ||
Day 11 | 165ms | 63007ms | ||
Day 12 | 0.8ms | 11ms | ||
Day 13 | 17ms | 51ms | ||
Day 14 | 9.6ms | 900ms | ||
Day 15 | ||||
Day 16 | ||||
Day 17 | ||||
Day 18 | ||||
Day 19 | ||||
Day 20 | ||||
Day 21 | ||||
Day 22 | ||||
Day 23 | ||||
Day 24 | ||||
Day 25 |
Day | Part One | Part Two | ||
---|---|---|---|---|
TypeScript | Rust | TypeScript | Rust | |
Day 1 | 0.9ms | 51μs* | 0.9ms | 59μs* |
Day 2 | ||||
Day 3 | ||||
Day 4 | ||||
Day 5 | ||||
Day 6 | ||||
Day 7 | ||||
Day 8 | ||||
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 |
Day | Part One | Part Two | ||
---|---|---|---|---|
TypeScript | Rust | TypeScript | Rust | |
Day 1 | 0.37ms | 0.48ms | ||
Day 2 | 2.6ms | 1.9ms | ||
Day 3 | ||||
Day 4 | ||||
Day 5 | ||||
Day 6 | ||||
Day 7 | ||||
Day 8 | ||||
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 |
Day | Part One | Part Two | ||
---|---|---|---|---|
TypeScript | Rust | TypeScript | Rust | |
Day 1 | 0.5ms | 6.2μs* | 1.2ms | 1.9μs* |
Day 2 | 2ms | 194μs* | 2.4ms | 196μs* |
Day 3 | 2.6ms | 231μs* | 2.8ms | 256μs* |
Day 4 | 663ms | 506ms | 19s | 14s |
Day 5 | 13ms | 193μs | 21ms | 4ms |
Day 6 | ||||
Day 7 | ||||
Day 8 | ||||
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 |
* measured on [email protected] All benchmarks are calculated with input parsing. I plan to refactor my solutions so I can bench without it.
-
Install Node.js
-
Open with VS Code
-
Install the suggested extensions when prompted (Recommended)
-
Install the required packages
npm i
Select
Current TS File
launch option. F5 runs the file you're focusing in debug mode.
There are tests on every task. You can run them with
npm test
With coverage report
npm run test:coverage
or if you installed the recommended mocha extension you can run them with that
-
Install Rust
-
Open with VS Code
-
Install the suggested extensions when prompted (Recommended)
-
Install the required crates
cargo build
Select
Current Rust Cargo
launch option. F5 runs the cargo you're focusing in debug mode. Set Rust to default tonightly
rustup default nightly
cargo run -p aoc201601
Run in the cargo you'd like to test
cargo test
Or in the workspace cargo if you'd like to run all tests
cargo test --all
Run a specific days benchmark
cargo bench -p aoc201501
Or in the workspace cargo if you'd like to run all benchmarks (Takes a while!)
cargo bench --all
cargo run -p scaffold 2016 01
All times are measured on [email protected] 🌟 marks my favourites Right now the CodeClimate and Codecov coverage reporters only report the Node test coverage and the Coverall reporter only the Rust results. This is because for Node
nyc
generateslcov
reports andTarpaulin
generatescobertura.xml
type reports. Once either Rust gets a native coverage reporter that will outputlcov
orTarpaulin
supportslcov
, these two reports can't be merged.