diff --git a/README.md b/README.md index d8bd7e3..dd7ac9c 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,9 @@ Idris files. ## Authors Note +This entire book is a single literate code base, the source code is available at +https://git.stranger.systems/Idris/advent + The solutions contained in this project are intended to be read in sequential order, though can reasonably be read in any order if you have a good level of familiarity with more advanced functional programming topics. diff --git a/scripts/build-book b/scripts/build-book index 8dd718f..810608e 100755 --- a/scripts/build-book +++ b/scripts/build-book @@ -4,6 +4,7 @@ use File::Temp; use Shell::Command; use paths; +unit sub MAIN(Bool :$upload); my $tempdir = tempdir.IO; my $ttc-number = dir('build/ttc').first.basename; diff --git a/src/SUMMARY.md b/src/SUMMARY.md index 85d77fa..3cb135c 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -2,21 +2,29 @@ [README](README.md) -# Support Code +# Running the code -- [The Runner](Runner.md) +- [Runner - Divide Code Into Years and Days](Runner.md) +- [Main - Select a Day and Year to Run](Main.md) -# Years +# Utility Mini-Library + +- [Util - Extend Standard Types](Util.md) + - [Util.Eff - Effects and Effect Accessories](Util/Eff.md) + - [Util.Digits - Pattern Matching Integers as Lists of Digits](Util/Eff.md) +- [Array - Arrays With Constant Time Indexing and Slicing](Array.md) + +# Problems - [2015](Years/Y2015.md) - - [Day 1](Years/Y2015/Day1.md) - - [Day 2](Years/Y2015/Day2.md) - - [Day 3](Years/Y2015/Day3.md) - - [Day 4](Years/Y2015/Day4.md) - - [Day 5](Years/Y2015/Day5.md) - - [Day 6](Years/Y2015/Day6.md) - - [Day 7](Years/Y2015/Day7.md) - - [Day 8](Years/Y2015/Day8.md) - - [Day 9](Years/Y2015/Day9.md) - - [Day 10](Years/Y2015/Day10.md) - - [Day 11](Years/Y2015/Day11.md) + - [Day 1 - Warmup](Years/Y2015/Day1.md) + - [Day 2 - Early Effectful Parsing](Years/Y2015/Day2.md) + - [Day 3 - Mutually Recursive Functions](Years/Y2015/Day3.md) + - [Day 4 - Basic FFI](Years/Y2015/Day4.md) + - [Day 5 - Views and Dependent Pattern Matching](Years/Y2015/Day5.md) + - [Day 6 - Naive 2D Grid](Years/Y2015/Day6.md) + - [Day 7 - Dependent Maps and Indexed Type Familes](Years/Y2015/Day7.md) + - [Day 8 - Proper Effectful Parsers](Years/Y2015/Day8.md) + - [Day 9 - Naive Graph Traversal](Years/Y2015/Day9.md) + - [Day 10 - Digits View](Years/Y2015/Day10.md) + - [Day 11 - Refinement Types](Years/Y2015/Day11.md)