README
Running the code
1.
Runner - Divide Code Into Years and Days
2.
Main - Select a Day and Year to Run
Utility Mini-Library
3.
Util - Extend Standard Types
3.1.
Util.Eff - Effects and Effect Accessories
3.2.
Util.Digits - Pattern Matching Integers as Lists of Digits
4.
Array - Arrays With Constant Time Indexing and Slicing
5.
Parser - Recursive Descent Parsing, With Effects
5.1.
Interface - Core Parsing Functionality
5.2.
ParserState - Custom Effect for Parser Internal State
5.3.
Numbers - Parsers for Numerical Values
5.4.
JSON - A JSON Parser
Problems
6.
2015
6.1.
Day 1 - Warmup
6.2.
Day 2 - Early Effectful Parsing
6.3.
Day 3 - Mutually Recursive Functions
6.4.
Day 4 - Basic FFI
6.5.
Day 5 - Views and Dependent Pattern Matching
6.6.
Day 6 - Naive 2D Grid
6.7.
Day 7 - Dependent Maps and Indexed Type Familes
6.8.
Day 8 - Proper Effectful Parsers
6.9.
Day 9 - Naive Graph Traversal
6.10.
Day 10 - Digits View
6.11.
Day 11 - Refinement Types
6.12.
Day 12 - Custom Parser Effect and DLists
6.13.
Day 13 - Naive Ring Buffer and parameters blocks
6.14.
Day 14 - Introduction to Streams
Light
Rust
Coal
Navy
Ayu
Idris 2 by Highly Contrived Example
Parsing Utilties
module
Parser
import
public
Parser.Interface
as
Parser
import
public
Parser.ParserState
as
Parser