summaryrefslogtreecommitdiff
path: root/2020
Commit message (Collapse)AuthorAge
* Day 19Tom Smeding2020-12-25
| | | | | | | | The second part was supposed to be more difficult than the first part; the problem statement hinted that you might need to memoise the set of sentences matched by non-recursive rules, "especially rules 42 and 31". Why the hell then did my utterly naive matcher from part 1 work without changes in ~60ms total?
* Day 18Tom Smeding2020-12-23
| | | | Yay parsec
* Day 17Tom Smeding2020-12-23
|
* Day 16Tom Smeding2020-12-19
|
* Day 15 (slow)Tom Smeding2020-12-16
|
* Day 14Tom Smeding2020-12-16
|
* Day 13Tom Smeding2020-12-16
|
* Day 12Tom Smeding2020-12-16
|
* Day 12 part 1Tom Smeding2020-12-14
|
* Day 11Tom Smeding2020-12-14
|
* Day 10Tom Smeding2020-12-13
| | | | | | | | This one is particularly nice in Haskell, since transforming the naive recursive function to a memoised, linear form was literally a matter of writing the recursion using an explicit fixpoint combinator, and then replacing the recursive call with a lazy array index. This is where laziness shines.
* Day 9Tom Smeding2020-12-13
|
* Day 8Tom Smeding2020-12-08
|
* Less intrusive Makefile dependency trackingTom Smeding2020-12-08
|
* Day 7Tom Smeding2020-12-07
|
* Day 6Tom Smeding2020-12-06
|
* Day 5Tom Smeding2020-12-05
|
* Simplify hs dependency stuff in MakefileTom Smeding2020-12-05
|
* Day 4Tom Smeding2020-12-04
|
* Add a hie.yamlTom Smeding2020-12-03
|
* Day 3Tom Smeding2020-12-03
|
* Day 2Tom Smeding2020-12-02
|
* Start of 2020Tom Smeding2020-12-01