1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns=
"http://www.w3.org/1999/xhtml">
4 <meta http-equiv=
"Content-Type" content=
"text/html; charset=utf-8" />
5 <meta http-equiv=
"Content-Style-Type" content=
"text/css" />
6 <meta name=
"generator" content=
"pandoc" />
7 <title>Advent of Code
2016</title>
8 <style type=
"text/css">code{white-space: pre;}
</style>
9 <link rel=
"stylesheet" href=
"modest.css" type=
"text/css" />
13 <h1 class=
"title">Advent of Code
2016</h1>
15 <p>Code to solve the
<a href=
"http://adventofcode.com/2016/">Advent of Code
</a> puzzles. This year, I'm trying to use the puzzles as a prompt to learn
<a href=
"https://wiki.haskell.org/Haskell">Haskell
</a>.
</p>
16 <p><a href=
"http://learnyouahaskell.com/chapters">Learn you a Haskell
</a>,
<a href=
"https://www.haskell.org/tutorial/index.html">Introduction to Haskell
98</a>, and
<a href=
"https://hackage.haskell.org/">Hackage
</a> are good resources.
</p>
17 <p>I'm using the basic Haskell Platform installation (install with
</p>
18 <pre><code>$ sudo aptitude install haskell-platform
</code></pre>
20 <p>I'm also using some extra libraries. Before installing, run
<code>cabal update
</code> then set
<code>library-profiling: True
</code> in
<code>~/.cabal/config
</code> . Then install the packages with
</p>
21 <pre><code>$ cabal install MissingH
22 $ cabal install parsec-numbers
23 $ cabal install cryptonite
24 $ cabal install pqueue
</code></pre>
25 <p>Compile the code with
</p>
26 <pre><code>ghc --make advent01.hs
</code></pre>
28 <pre><code>advent01
</code></pre>
29 <p>If you're profiling, compile and run with
</p>
30 <pre><code>ghc -O2 --make advent01.hs -prof -auto-all -caf-all -fforce-recomp
31 time ./advent01 +RTS -p -hy
</code></pre>
32 <p>and create the profile picture with
<code>h2ps advent01.hp
</code> .
</p>
33 <p>Build this readme file wth
</p>
34 <pre><code>pandoc -s README.md
> README.html
</code></pre>
35 <p>(Using the
<a href=
"https://github.com/markdowncss/modest">Modest styles
</a>.)
</p>